Angular把某个库添加到运行时的全局范围中,比如:添加bootstrap、jquery等样式

那些没有导入到应用中的旧版 JavaScript 库可以添加到运行时的全局作用域中,并像在 script 标签中一样加载。可以在 CLI 配置文件angular.json 中的构建目标(build target)的 "scripts" 和 "styles" 选项中配置 CLI,以便在构建期间添加这些文件。

例如,要使用 Bootstrap 4,首先就要使用 npm 包管理器来安装该库及其依赖:

npm install jquery --save
npm install popper.js --save
npm install bootstrap --save
复制代码

或者

cnpm install jquery --save
cnpm install popper.js --save
cnpm install bootstrap --save
复制代码

在 angular.json 配置文件中,把关联的脚本文件添加到 "scripts" 数组中:

"scripts": [
  "node_modules/jquery/dist/jquery.slim.js",
  "node_modules/popper.js/dist/umd/popper.js",
  "node_modules/bootstrap/dist/js/bootstrap.js"
],
复制代码

把 Bootstrap 的 CSS 文件添加到 "styles" 数组中:

"styles": [
  "node_modules/bootstrap/dist/css/bootstrap.css",
  "src/styles.css"
],
复制代码

运行或重启 ng serve,看看你的应用是否正在使用 Bootstrap 4。

注意:

当你用 "scripts" 数组导入一个库后,就不应该在你的 TypeScript 代码中再用 import 语句来导入它了(比如:import * as $ from 'jquery';)。 如果你这样做,就会得到该库两个不同的副本:一个作为全局库导入,另一个作为模块导入。这对于那些带有插件的库来说特别糟糕,比如JQuery,因为每个副本都会有不同的插件。

全部评论

相关推荐

不愿透露姓名的神秘牛友
11-21 17:16
科大讯飞 算法工程师 28.0k*14.0, 百分之三十是绩效,惯例只发0.9
点赞 评论 收藏
分享
10-30 10:16
南京大学 Java
龚至诚:给南大✌️跪了
点赞 评论 收藏
分享
10-13 17:47
门头沟学院 Java
wulala.god:图一那个善我面过,老板网上找的题库面的
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务