[英]Angular (CLI) 6 - Local library publishing
我已经使用新的 angular-cli 命令创建了我的第一个库:library。
构建库后,我想将其导入现有项目(不发布到 npm),但不幸的是没有运气.. 实际上,如果我将其复制到 node_modules 中,它就可以工作,但是每次更新时我都必须这样做我的 node_modules 文件夹。 因此,我希望在根目录中有一个文件夹 (libs),我可以在其中存储和引用我所有的(自制)库。
我尝试制作文件夹并将库粘贴到其中,并在 tsconfig.xml 中添加了路径选项。 这导致“找不到模块”错误(我想我在 cli 设置中遗漏了一些东西,但我不知道是什么)
你知道我缺少什么吗? 或者您对这种情况有另一种方法吗?
谢谢 :)
编辑:
tsconfig.json:
{
"compilerOptions": {
// code omitted for brevity
"paths": {
"my-lib": ["./libs/my-lib"],
}
}
在 app.module.ts 中导入
import { MyLibraryModule } from 'my-lib'
好的,所以我找到了解决方案。 我将库保存在 libs 文件夹中,并执行了“npm install /absolute/path/to/my/library --save”,这似乎是这样做的方法。 (这会创建对本地库而不是 npm 的引用)
希望它可以帮助那里的任何人;)
您是否还导出了“./libs/my-lib”以使其可用?
就我而言,问题是我的 baseUrl 是“src”,而我的“paths”配置是
"ngx-y-x": [
"dist/ngx-y-x"
],
"ngx-y-x/*": [
"dist/ngx-y-x/*"
]
因此,您尝试从“src”中找到不存在的“dist”——我必须返回一级。
"ngx-y-x": [
"../dist/ngx-y-x"
],
"ngx-y-x/*": [
"../dist/ngx-y-x/*"
]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.