Angular 库:如何从 npm 包切换到 npm sym link?
Angular libraries : How to switch from npm package to npm sym link?
在我的 Angular 工作区中,我有一个应用程序和一个库。
该库在应用程序中使用符号 link (npm link my-lib
) 引用,我更新了我的 tsconfig.json
以了解我的库的路径:
"paths": {
"my-lib": [
"dist/my-lib/my-lib",
"dist/my-lib"
]
}
当我像这样构建我的库时:
ng build my-lib --watch
我得到实时更新,我可以立即看到我的应用程序中的更改,该应用程序在使用 ng serve
时会自动重新编译
到目前为止一切都很好。但是,当我在我的构建服务器上构建时,我想将我的库发布到 npm 并使用 npm 包而不是 sym link.
将我的包发布到 npm 后,我 运行 npm i my-lib
在我的应用程序中。软件包已安装。
但是,在对开发中的库进行更改时,我不再获得实时更新。我认为这是因为符号 link 不再使用,我的应用程序正在使用 npm 包。
我该如何解决这个问题?我需要生产包,但在开发中我想使用 sym link。我该怎么做?
从 npm feed 安装库后,必须重新创建符号链接。就这么简单:)
在我的 Angular 工作区中,我有一个应用程序和一个库。
该库在应用程序中使用符号 link (npm link my-lib
) 引用,我更新了我的 tsconfig.json
以了解我的库的路径:
"paths": {
"my-lib": [
"dist/my-lib/my-lib",
"dist/my-lib"
]
}
当我像这样构建我的库时:
ng build my-lib --watch
我得到实时更新,我可以立即看到我的应用程序中的更改,该应用程序在使用 ng serve
到目前为止一切都很好。但是,当我在我的构建服务器上构建时,我想将我的库发布到 npm 并使用 npm 包而不是 sym link.
将我的包发布到 npm 后,我 运行 npm i my-lib
在我的应用程序中。软件包已安装。
但是,在对开发中的库进行更改时,我不再获得实时更新。我认为这是因为符号 link 不再使用,我的应用程序正在使用 npm 包。
我该如何解决这个问题?我需要生产包,但在开发中我想使用 sym link。我该怎么做?
从 npm feed 安装库后,必须重新创建符号链接。就这么简单:)