Angular单项目升级多项目怎么做,方法操作是什么
Admin 2022-06-29 群英技术资讯 335 次浏览
情景:
本文开发环境如下:
panjie@panjies-iMac web % ng --version _ _ ____ _ ___ / \ _ __ __ _ _ _| | __ _ _ __ / ___| | |_ _| / △ \ | '_ \ / _` | | | | |/ _` | '__| | | | | | | / ___ \| | | | (_| | |_| | | (_| | | | |___| |___ | | /_/ \_\_| |_|\__, |\__,_|_|\__,_|_| \____|_____|___| |___/ Angular CLI: 12.1.4 Node: 14.16.0 Package Manager: npm 6.14.11 OS: darwin x64 Angular: 12.1.5 ... animations, common, compiler, compiler-cli, core, forms ... platform-browser, platform-browser-dynamic, router Package Version --------------------------------------------------------- @angular-devkit/architect 0.1201.4 @angular-devkit/build-angular 12.1.4 @angular-devkit/core 12.1.4 @angular-devkit/schematics 12.1.4 @angular/cli 12.1.4 @schematics/angular 12.1.4 rxjs 6.6.7 typescript 4.3.5
我们进入原web项目的根文件夹,执行ng generate application wechat。
panjie@panjies-iMac web % ng generate application wechat ? Would you like to add Angular routing? Yes
选择是否使用路由以及css样式类别后angular cli将为我们生成projects文件夹:
projects
├── karma.conf.js
├── src
│ ├── app
│ │ ├── app-routing.module.ts
│ │ ├── app.component.html
│ │ ├── app.component.scss
│ │ ├── app.component.spec.ts
│ │ ├── app.component.ts
│ │ └── app.module.ts
│ ├── assets
│ ├── environments
│ │ ├── environment.prod.ts
│ │ └── environment.ts
│ ├── favicon.ico
│ ├── index.html
│ ├── main.ts
│ ├── polyfills.ts
│ ├── styles.scss
│ └── test.ts
├── tsconfig.app.json
└── tsconfig.spec.json5 directories, 17 files
同时更新了angular.json文件,写入了wechat这个新的项目的配置信息。
此时我们便可以使用ng s wechat来启动wechat项目,使用ng t wechat来测试wechat项目,以及使用ng build wechat来构建wechat的项目了。
wechat项目有了以后,我们当前得到了如下的目录树:
panjie@panjies-iMac web % tree -L 1 -a
.
├── .browserslistrc ②
├── .editorconfig ①
├── .eslintrc.json ②
├── README.md ①
├── angular.json ①
├── dist ①
├── karma.conf.js ②
├── node_modules ①
├── package-lock.json ①
├── package.json ①
├── projects ①
├── src ②
├── tsconfig.app.json ②
├── tsconfig.json ②
└── tsconfig.spec.json ②
① Angular工程文件,对web及wechat项目均生效
② web项目的专属文件
为了更加的整齐划一,我们将以②为标识的文件统一移动到projects文件夹中。新建文件夹名为web。
项目移动完成后,我们对应修正项目的配置信息
该文件存放的是Angular项目的配置信息,配置不正确将直接导致ng s等命令无法正常启动。
我们对应修正如下:
{ "projects": { "web": { - "root": "", + "root": "projects/web", - "tsConfig": "tsconfig.app.json", + "tsConfig": "projects/web/tsconfig.app.json", - "tsConfig": "tsconfig.spec.json", + "tsConfig": "projects/web/tsconfig.spec.json", - "karmaConfig": "karma.conf.js", + "karmaConfig": "projects/web/karma.conf.js",
然后使用全局替换,将"src替换为"projects/web/src
修改完成后,运行ng s web或ng t来检查是否存在其它的语法错误(主要是在迁移过程中可能发生的引用错误),有的话按提示进行修正。
至此,历史项目迁移完毕。
接下来便可以在projects里面新一个common文件夹,然后将公用的实体、服务、组件等全部移过去了。这些小的功能模块即可以在web工程中使用,也可以在wechat中使用,这样以来同样的轮子我们只造一个就可以了。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
本篇文章给大家带来了JavaScript中关于全局函数的相关知识,JavaScript中的全局函数有很多,下面我们一起来看一下应该怎样使用,希望对大家有帮助。
目录引言写法constructor特性继承题外话引言前文已提过:在 class 出现之前,JavaScript 实现继承是件麻烦事,构造函数继承有加上原型上的函数不能复用的问题;原型链继承又存在引用值属性的修改不独立的问题;组合继承又存在两次调用构造函数的问题,寄生组合继承,写起来又太麻烦了,总之,在 class 出现
这篇文章给大家分享的是关于JavaScript函数柯里化的内容,对新手来说,可能不知道函数柯里化是什么以及JavaScript函数柯里化的实现原理,对此本文就给大家详细的介绍一下。
很多人在学习JavaScript时,对于JavaScript创建对象的几种模式不是很理解,这篇文章对工厂模式,构造函数模式,原型模式这三种模式做除了详细介绍没希望对大家学习JS创建对象有所帮助。
用JS实现滚动条事件的代码怎么样写?今天所讲述的是js实现滚动条事件的实例代码内容,如果你对以下内容有兴趣的话,可以来了解下操作编写过程,不懂得如何运动的话,直接复制粘贴代码就能使用了。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008