如何将角度项目设置为另一个角度项目的 package.json 中的依赖项

2023-11-22

我有三个不同的 Angular cli 项目(X、Y、Z)。我想将 [X] 作为父项目,同时将 Y 和 Z 作为 npm 包依赖项添加到 X。这意味着 [X] package.json 将包含 [Y] 和 [Z] 的依赖项,如下所示。

"dependencies": {
    "@angular/common": "^4.0.0",
    //.. other angular dependency
    "y": "1.0.1",
    "z": "1.0.3"
}

如何创建这些依赖关系?

注意:现在我将 Y 和 Z 作为 X 内的延迟加载文件夹。我想将其解耦为独立的 npm 包。


基本上你想分三步完成:

  1. 将您的项目“y”和“z”变成一个库
  2. 将该库打包到 npm-package 中
  3. 让“x”使用该库

简而言之,您可以这样做:

  1. 我强烈推荐使用ng-packagr用于根据“y”和“z”创建库。ng-packagr允许您采取现有的Angular CLI项目并将其变成一个图书馆。基本上你必须做五件事:

    • 安装包:npm install ng-packagr --save-dev
    • add ng-package.json包含以下内容:

      {
         "$schema": "./node_modules/ng-packagr/ng-package.schema.json",
         "lib": {
           "entryFile": "public_api.ts"
          }
      }
      
    • add public_api.ts与模块的导出,即

      export * from './src/app/modules/example/example.module'
      
    • 添加脚本到package.json: "packagr": "ng-packagr -p ng-package.json"

    • 运行脚本:npm run packagr
  2. 通过运行创建 npm-packagenpm pack这将生成一个y-1.0.0.tgz- 文件,在哪里y是你的项目名称和1.0.0您在中设置的版本package.json

  3. 现在您可以通过运行将其安装为项目“x”中的依赖项npm install ./relative/path/to/y-1.0.0.tgz你就完成了!

这篇文章是基于这个article.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将角度项目设置为另一个角度项目的 package.json 中的依赖项 的相关文章

  • 在 TypeScript 中生成具有单个模块的声明文件

    给定以下文件夹结构 src foo ts bar ts baz ts index ts Where foo ts bar ts and baz ts每个导出一个默认类或事物 即在foo ts export default class Foo
  • 获取路由查询参数

    我正在尝试从 rc1 迁移到 rc4 但在获取查询字符串参数时遇到问题 ActivatedRoute 对象始终为空 英雄组件 ts import Component OnInit from angular core import Contr
  • 角度报告进度返回上传的文件总数,而不是进度

    在我的组件中我有这个 this authService addPost post subscribe data gt if data type HttpEventType UploadProgress console log data el
  • Asp.net core webapi获取从Angular4应用程序发布的空值

    我是新来的Angular4在快速交付内容的情况下 所以没有时间彻底学习它 所以如果我的问题看起来很幼稚 请原谅 From my Asp Net Web API I have Confirmemail API必须从 Angular4 应用程序
  • 如何让 Angular 2 选择动态添加的 routerLink 指令

    正如所见这个笨蛋 https plnkr co edit K906Y8KtkgYVgAIsCLqE p preview 我动态地将 HTML 添加到我的一个元素中 这可以归结为 Component selector my comp temp
  • Spring-Security + Angular 2 + CORS。无法重定向 Facebook 登录

    我正在构建一个在前端使用 Angular 2 在后端使用 Spring Boot 的应用程序 我正在使用 Spring Security 和 Spring Social 来允许通过 Facebook 登录 我以为我已正确配置 CORS 但收
  • Angular 中的单元测试点击事件

    我正在尝试将单元测试添加到我的 Angular 2 应用程序中 在我的一个组件中 有一个带有 click 处理程序 当用户单击按钮时 将调用在中定义的函数 ts类文件 该函数在 console log 窗口中打印一条消息 表明该按钮已被按下
  • Nuxt.js 安装错误

    我已经尝试安装 nuxt app 应用程序几次了 我已经在终端中使用 npm 和yarn 并以管理员身份在 powershell 中运行了它 我在创建应用程序时继续遇到错误 我在下面包含了错误日志以供参考 我think认为问题出在这个抛出错
  • 如何使用npm安装本地网络中的所有节点模块?

    我的节点应用程序将部署在无法访问互联网的银行中 我可以将所有节点模块下载到本地目录中并从中安装它们 还是将node modules复制到银行机器上 任何安全实用的建议将不胜感激 谢谢 OR 如何添加node modules不使用依赖项int
  • 验证以防止角度形式出现重复的形式值

    我有几个表单数组 我需要进行验证 以便每个表单行中的特定字段在所有表单数组中必须是唯一的 如果任何值出现多次 则两个表单字段都必须标记为红色 我设法编写了一个函数 以便如果这些字段有任何更改 该函数将返回 true false 但我不确定如
  • 如何将Sinon添加到Angular 2测试中?

    我想添加Sinon进行测试 但无法让它运行 我已经安装了 sinon 和 karma sinon 作为 DevDependency 将 sinon 添加到我的 karma 配置文件中的框架中 frameworks jasmine brows
  • 如何在 Angular 应用程序中动态更改 CSS 类名称?

    我有两个 CSS 类名 如下所示 icon heart color bdbdbd icon heart red color a6b7d4 我的 HTML 包含一个心形图标 div class icon heart div
  • Mapbox 打字稿

    通过关注这个项目 我成功地让 Leaflet 与 Angular 2 和 Webpack 一起工作 Angular 2 传单启动器 https github com haoliangyu angular2 leaflet starter 我
  • 角度材质表-表内边框

    I am using Angular material table and I want to set border inside the table Using CSS I was able to set border Normal ca
  • Git 与人工制品

    刚刚完成 NPM 和 Bower 的 Artifactory 设置 它非常容易使用 您只需更改存储库 URL 一切就正常了 查看有关如何让 Artifactory 与 github vcs 一起使用的文档 它看起来过于复杂 我想知道是否有人
  • 没有将“exportAs”设置为“ngbDatepicker”的指令

    I m using angular 4 i was trying to add datepicker while i m using datepicker popup html I m getting error as given belo
  • 如何将查询参数添加到守卫中的路由并将其传递给 Angular 4 中的组件?

    我在我的 Angular 4 应用程序中使用路由保护 如果条件满足并返回 true 我想向路由添加一个查询参数 这是我一直在研究的代码 Injectable export class ViewGuardService implements
  • 具有多个 Angular 2 应用程序的 ASP.Net Core MVC [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在尝试为一个我知道会变得越来越复杂的项目准备结构 我想使用 ASP Net Core MVC 进行顶层导航 我想在每个主视图中放置
  • Angular2 如何对自定义验证器指令进行单元测试?

    我为输入字段编写了一个非常简单的自定义验证器 import Directive from angular core import AbstractControl NG VALIDATORS from angular forms functi
  • NPM 如何处理版本冲突?

    由于 NPM 版本 3 节点模块和依赖项都安装在同一根级别 但是 如果我安装两个依赖于同一模块的两个不同版本的模块怎么办 例如 如果我安装异步npm i email protected cdn cgi l email protection

随机推荐