angular/ng-alain 如何修改UI/delon包组件

前言:

还是建议大家把angular看一下再来用。

目的:

最近有很多使用者不知道angular的开源UI库如何修改组件。确实对于后台系统来说有的时候UI库的组件不一定能完全满足我们的业务/设计需求。实地开发中在依赖于现有UI库包的同时,我们可能需要增加一部分功能但是又不想重新开发整个组件。本篇主要来解决这个问题。以ng-alain/alain 组件delon包来做这个演示。

重点:

对于开源组件包的修改问题好像有些争议,我的大概观点是这样,必须遵守原有开源组件包的协议同时,如有创收还是尽量donate一下作者吧,以表敬意。

正文:

产生这个问题的主要源头是对angular的组件化和angular如何实现组件化以及组件化的应用理解不够深刻。以下通过实际操作来演示,不讲概念只解决问题,理解多深请诸君自己把握。

1.下载ng-alain脚手架和Delon组件包。


2.复制delon/packages中所有文件到alain/share/delon文件夹下


3.alain/tsconfig.app.json;tsconfig.spec.json;tsconfig.json paths 添加  "@delon/*": ["app/shared/delon/*"]


4.去掉alain package.json delon包和ng-alain包的相关声明。


5.npm install

6.删除alain/delon包中 cli 和 schematics  以及其他文件夹中多余的 json,不要删除 ts结尾的 就好 。好像有个文件夹有string.js 记得不要删了,这个明显是有用的。


7.ng serve 查看报错的less引用 ,可以先全局搜索 node_modules/@delon 然后对应的文件改掉就可以了。


8.完成引入,这时候你就修改delon组件了。

9.你不会到这了都不知道怎么改吧,改代码不用我教了吧。对应改组件代码就可以了。!!!???。

结语

首先这只是个引子帮助理解组件化。angular是组件化渲染完全可以自己新增组件去替换模板的一些内容,这么引入其实有些繁琐了。

有人非要问为啥要包话,如果你是后端我想问你为啥要dll包和jar包呢,每次给你源码工程不就完了,说的好像很好合并升级一样。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容