我想要的是在本地拥有一个库,这样当我更改它时,这些更改就会反映在使用该库的项目中。
我已经在我的本地机器上签出了这个库:https://github.com/manfredsteyer/angular-oauth2-oidc
所以我现在要做的就是进入库目录,然后使用npm link
然后进入我的项目目录并执行
npm link angular-oauth2-oidc
库文件夹出现在我的node_modules文件夹中,但我无法使用它,因为当我启动应用程序ng serve时,它会显示:
Cannot find module 'angular-oauth2-oidc'
我是这样导入的:
import { OAuthModule } from 'angular-oauth2-oidc';
我尝试在tsconfig.json文件的compilerOptions下添加路径,但没有成功。
你知道我错过了什么吗?我已经尝试了几个关于angular github问题的建议,但都没有解决我的问题。
提前感谢
发布于 2018-01-19 21:04:08
软件包文件夹中的npm链接将在全局文件夹{prefix}/lib/node_modules/中创建一个符号链接,该符号链接指向执行npm link命令的软件包
不要使用npm链接将库添加到项目中,请使用npm install:
npm install angular-oauth2-oidc --save发布于 2018-01-19 21:11:00
您必须安装它,而不仅仅是链接它,因此使用此行命令with flag --save以确保它将保存在您的package.json中
npm install [package_name] --save您可以从源网站或https://www.npmjs.com/package/angular2获取包名称
发布于 2020-07-01 22:10:35
当你说:
我现在要做的就是进入库目录,然后打开npm
链接
您的意思是说,您正在克隆存储库的文件夹中执行npm link?因为如果是这样的话,这很可能是您的问题,因为这是源目录,而不是实际作为包发布的内容。您必须生成库,将目录更改为包的分发文件夹,然后运行npm link。然后,当您运行该库的构建时,任何链接了该库的Angular应用程序都会自动在其node_modules中包含您构建的最新版本。
此外,在使用链接库的Angular应用程序中,您需要确保在angular.json中将preserveSymlinks设置为true。
https://stackoverflow.com/questions/48341745
复制相似问题