许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  Nx和ng-packagr:Angular打包组件并发布使用

Nx和ng-packagr:Angular打包组件并发布使用

阅读数 7
点赞 0
article_banner

此项目是使用Angular CLINrwl Nx生成的。

 现在开始安装项目和完成配置
 
 Nx是企业级Angular应用程序的开源工具包。
 
 Nx旨在帮助您创建和构建企业级Angular应用程序。 它为应用程序项目结构和模式提供了一种有见地的方法。
 
总结来说就是一个打包的工具

快速入门和文档

观看关于如何开始使用Nx的5分钟视频。

生成你的第一个应用 程序

打开cmd 命令提示符  

安装:全局安装  yarn global add @angular/cli 或  npm install -g @angular/cli

 全局安装  yarn global add @nrwl/schematics 或  npm install -g @nrwl/schematics

 全局安装  yarn global add @nrwl/nx 或  npm install -g @nrwl/nx

 创建Nx工作区的最简单方法是运行:
 
ng new workspace --collection=@nrwl/schematics
workspace可以换成你喜欢的项目名

在项目下安装:yarn add @nrwl/schematicsnpm install @nrwl/schematics


配置package.json在package.json中添加如下内容
 
{
    ......
    "distributionManagement": {
        "releaseRegistry": "服务器地址:端口/repository/npm/",
        "snapshotRegistry": "服务器地址:端口/repository/npmHosted/"
    },
    "publishConfig": {
        "registry": "服务器地址:端口/repository/npmHosted/"
    },
    "scripts": {
        .....
        "build:lib": "ng-packagr -p libs/telin-ewifi-gis/package.json"
    },
    "private": false
    ......
}

创建应用程序将新应用程序添加到Nx Workspace是通过使用Angular CLI generate命令完成的。 Nx有一个名为app的示意图,可用于将新应用程序添加到我们的工作区中:
 


 在项目中添加: ng generate app myappng generate application myapp # same thing, 我只使用过第一种方法创建过程序,建议第一种。第二种可以自己尝试下。
 

 myapp可以换成你喜欢的名称
 

创建一个Lib通过使用Angular CLI生成命令将新库添加到Nx Workspace,就像添加一个新应用程序一样。
 

 在项目中添加: ng generate lib mylibng generate library mylib # same thing, 我只使用过第一种方法创建过程序,建议第一种。第二种可以自己尝试下。
 

 mylib可以换成你喜欢的名称
 


 如此,以上步骤就将项目的开发环境和测试环境就配置好了,下面我们可以进行编码了
 

运行ng serve 或者自定义端口号 ng serve --port 1200// 1200为自定义的端口号

打包 build
在mylib创建package.json

{
    "$schema": "../../node_modules/ng-packagr/package.schema.json",
    "name": "telin-ewifi-gis",                
// 创建的组件名
   "version": "2.0.0",                       // 版本
   "ngPackage": {
       "lib": {
           "entryFile": "src/index.ts"      
// 入口
       },
       "dest": "@common/telin-ewifi-gis"    
// 打的包命名为@common
   }
}

 package.json 用来配置 ng-packagr 并告诉它去哪里找 index.ts 文件,这个文件通常是用来导出我们组件库的功能模块。(备注:index.ts 文件是 Angular 组件的使用约定)
 

 运行 build:lib命令,我们在之前已经配置好了。
 

 编译之后包为:
 
@common
    telin-ewifi-gis
        lib
        index.d.ts
        package.json
        telin-ewifi-gis.d.ts
        ......

 在接着,我们进入 telin-ewifi-gis文件:
 

 运行命令 npm pack,得到了: telin-ewifi-gis-2.0.0.tgz

上传至私服 npm publish


可能有问题,我一般都是这么发布的




 将这个包上传到npm私服,npm私服地址
 


 更多帮助
 

 要在Angular CLI上获得更多帮助,请使用帮助或查看Angular CLI README自述文件。


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删


相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空