javascript - 手动加载我自定义的节点模块(Angular 4.x)
问题描述
我在我的 Angular 4.x 应用程序中使用primeng Calender 功能 - 但是我必须对需要保存在我们的仓库中的插件进行大量自定义,但是目前这个文件存在于node_modules
我们不保存到我们的仓库中的位置(但运行npm install
安装依赖项)
https://www.primefaces.org/primeng/#/calendar
我试图在我的 tsconfig.app.json 中引用它,但我显然做错了 - 将东西从 node_modules 移动到我的src
应用程序的最佳方法是什么?
{
"extends": "../tsconfig.json",
"compilerOptions": {
"outDir": "../out-tsc/app",
"baseUrl": "./",
"module": "es2015",
"types": ["underscore"]
},
"include": [
"/src/assets/css/primeng/components/calendar/calendar.js"
],
"exclude": [
"test.ts",
"**/*.spec.ts"
]
}
解决方案
我在使用 ckeditor 时遇到了同样的问题,下面是我为在我的构建中包含自定义版本的 ckeditor 所做的修改。我相信还有其他方法,但这对我有用。
- 这将输出到 assets 文件夹中,在对模块进行补丁或更新时,您需要将 assets 文件夹部署到生产服务器。
修改 angular-cli.json
"assets": [ "assets", { "glob": "**/*", "input": "../direcotryOutsideOfNode_Modules/ckeditor", "output": "./assets/scripts/ckeditor/" } ],
然后在您的 index.html 中将其添加为脚本标记
<script src="./assets/scripts/ckeditor/ckeditor.js"></script>
推荐阅读
- angular - Angular:更新后更新 Mat-Table 内容
- r - 为什么不在 RStudio 中打印并行作业?
- mongodb - MongoDB String 数据变成了 Object
- java - Spark java:在多个列上聚合并重命名它们
- ubuntu - 无法升级 NVidia 软件包
- sql - SQL 查询在节点上不起作用,但在 pgadmin 4 中起作用
- iframe - 在 Google 搜索页面中嵌入 iFrame
- c# - Entity Framework Core GroupBy - 相关实体上的聚合函数
- python - 如何从 python 中的批量文件的开头和结尾删除字节?
- c# - 我无法弄清楚这个 XML 解析和/或字符串替换