angular4.0如何引入外部插件1:import方案

时间:2022-06-17 06:42:33

引入外部插件是项目中非常重要的环节。因为部分插件以js语法写的,而ng4用的是ts语法,所以在引入时需要配置。

Step1:引入swiper插件的js文件【css在下面会讲到,先别急】

很重要的意见:亲测,如果用【方法二】引入的js导致效果有问题,请用【方法一】再试

方法一:在index.html中引入

可以用线上的地址,或者是下载到assets文件夹下

<script src="https://cdnjs.cloudflare.com/ajax/libs/Swiper/3.x.x/js/swiper.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Swiper/3.x.x/js/swiper.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Swiper/3.x.x/js/swiper.jquery.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Swiper/3.x.x/js/swiper.jquery.min.js"></script>

方法二:命令行引入

npm install swiper --save
npm install swiper --save-dev

备注:--save配置在生产环境;--save-dev配置在开发环境

命令执行完毕后,生产的swiper包会下载到node_modules文件夹下的swiper文件夹。

同时在package.json文件下会自动引入swiper配置。

angular4.0如何引入外部插件1:import方案

在angular-cli.json文件中配置js路径【相对于index.html的路径】

angular4.0如何引入外部插件1:import方案

Step2:配置swiper插件被ts识别

为什么要这步操作呢?因为ts并不能准确识别js语法,所以需要用ts中的interface接口,将js转化成ts并暴露出来。

npm install @types/swiper --save
npm install @types/swiper --save-dev

操作完成后,会在node_modules文件夹下生成@types_swiper文件夹。
查看文件夹下的index.d.ts文件,不明觉厉。

Step3:在app.module.ts中将被识别的swiper插件引入项目中

import * as A from 'B';

打开node_modules文件夹下的@types_swiper文件夹下的index.d.ts,见下图

angular4.0如何引入外部插件1:import方案

A:指的是插件的类,比如Swiper、$

B:指的是index.d.ts中的模块名称

import * as Swiper from 'swiper';

Step4:引入插件的css
方法一:在index.html中引入

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/Swiper/3.x.x/css/swiper.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/Swiper/3.x.x/css/swiper.min.css">

方法二:在styles.css中引入

@import "../node_modules/swiper/dist/css/swiper";

1、css的后缀不用写,写了反而报错

2、iconfont.css在引入时会报错,请在index.html中引入

angular4.0如何引入外部插件1:import方案的更多相关文章

  1. angular4&period;0如何引入外部插件2:declare方案

    前面有个<angular4.0如何引入外部插件1:import方案>,但是有局限,因为方案1需要用到@types这个东西. 但是并不是每一个插件都有@types,所以现在写个方案2. 拿引 ...

  2. Vue-cli开发笔记三----------引入外部插件

    (一)绝对路径直接引入: (1)主入口页面index.html中头部script标签引入: <script type="text/javascript" src=" ...

  3. 在vue-cli中引入外部插件

    一.可以用npm下载的 现在以jquery为例子: 1 先在package.json中的dependencies中写入“jquery”:“^3.2.1”(jquery版本) 2 在npm中搜索jque ...

  4. 自己编写jQuery动态引入js文件插件 &lpar;jquery&period;import&period;dynamic&period;script&rpar;

    这个插件主要是结合jquery或者xhr异步请求来使用的,它可以把已经引入过的js文件记录在浏览器内存中,当下次再引入相同的文件就忽略该文件的引入. 此插件不支持浏览器刷新保存数据,那需要利用cook ...

  5. ionic3&period;0--angular4&period;0 引入第三方插件库的方法

    ionic3.0 引入第三方插件 (swiper),方法很多,现详细说明下官方推荐(typings)做法. 1.全局安装Typings 1. npm install -g typings  2.搜索你 ...

  6. Angular4&period;0引入第三方框架,eg&colon; bootstrap、jquery

    最近学习angular4.0,在练习是需要使用jquery和bootstrap.但是查阅了,大多数都是angular2的方法,或者是angular4.0的方法但是不准确.花了一些时间终于捣腾出来了,把 ...

  7. Vue style里面使用&commat;import引入外部css&comma; 作用域是全局的解决方案

    问题描述 使用@import引入外部css,作用域却是全局的 <template> </template> <script> export default { na ...

  8. 如何在Android应用中引入外部网页

    在某些情况下,我们需要在Android应用中引入外部网页,这里记录一下如何操作(其实很简单^.^). 先介绍一下开发环境: 开发工具:Android Studio 1.5 SDK API版本:17 操 ...

  9. HTML引入外部文件,解决统一管理导航栏问题。

    1.IFrame引入,看看下面的代码     <IFRAME NAME="content_frame" width=100% height=30 marginwidth=0 ...

随机推荐

  1. &lt&semi;十三&gt&semi;JDBC&lowbar;dbcp数据库连接池

    配置文件:jdbc.properties username=rootpassword=kkdriverClassName=com.mysql.jdbc.Driverurl=jdbc:mysql://1 ...

  2. wordpress不用插件实现Pagenavi页面导航功能

    Pagenavi 是一个很好的功能,现在 WordPress 博客一般都是使用 WP-Pagenavi 插件来实现,但是如果插件一多的话整个wordpress效率就降低了,我们力求用尽量少的插件来实现 ...

  3. ActiveMQ发布订阅模式

    ActiveMQ的另一种模式就SUB/HUB即发布订阅模式,是SUB/hub就是一拖N的USB分线器的意思.意思就是一个来源分到N个出口.还是上节的例子,当一个订单产生后,后台N个系统需要联动,但有一 ...

  4. 关于C、OC、C&plus;&plus;、OC&plus;&plus;、Swift的一些常识

    关于C.OC.C++.OC++.Swift的一些常识 OC是C语言的一个超集,是一门面向对象的语言,因为苹果的崛起而火,API主要是cocoa(OSX)和cocoatouch(iOS),GCC 和 C ...

  5. iOS 静态库和动态库

    这两个东西都是编译好的二进制文件.就是用法不同而已.为什么要分为动态和静态两种库呢?先看下图:

  6. 如何通过WiFi来进行Android的真机模拟

    我们知道,在使用模拟机模拟的时候会出现较多的问题,所以如果有一部Android手机的话进行真机模拟是极好的. 准备工作: 第一种方法:使用数据线,具体操作百度.略(非WIFI操作的真机模拟) 第二方法 ...

  7. 【LeetCode练习题】Permutations

    全排列 Given a collection of numbers, return all possible permutations. For example,[1,2,3] have the fo ...

  8. &period;NET委托:一个关于C&num;的睡前故事 【转】

    紧耦合 从前,在南方一块奇异的土地上,有个工人名叫彼得,他非常勤奋,对他的老板总是百依百顺.但是他的老板是个吝啬的人,从不信任别人,坚决要求随时知道彼得的工作进度,以防止他偷懒.但是彼得又不想让老板呆 ...

  9. ios设置音乐audio自动播放

    因为audio标签的自动播放:autoplay.在ios系统中不能自动播放,此时需要设置,在进入页面自动播放音乐. 第一步,先引入js微信 <script src="js/jweixi ...

  10. eclipse Filter web&period;xml 问题解决 异步请求&commat;WebServlet

    <filter> <filter-name>AsynServlete</filter-name> <filter-class>com.kad.app.a ...