这段时间在我的Angular项目中需要用到日历这一控件:
像treeview、calendar等等这些“大”型控件,如果要自己写的话,需要花费很多时间,而且容易遗漏掉一些细节问题。如同大漠穷秋老师说的,如果一个ui库缺少了这些“大”型控件,那这个ui库一定是不合格的。于是我在:easyui、MaterialAngular、ant-design、primeng里面找。
其中,easyui的使用方式是jQuery,而Angular官方不推荐使用jq,所以第一个放弃了他。而后三者相比之下,我果断选择了primeng,为什么?看他的默认样式:
十分相似,既然在primeng里有相似度如此高的控件,为什么要选其他需要自己调整更多的库呢?好,开始Get Started!
这时候,可以看到primeng给出的文档。
首先,文档告诉我们需要使用npm进行对PrimeNG库的下载工作。有人说:这个我知道啊,淘宝大大好,我们用cnpm吧!但是我想说,千万不要这样做。如果你用cnpm进行下载安装操作,你的日历控件是显示不出自带样式的。为什么?因为cnpm下载的资源经常会缺失部分内容,如果你做的东西只是自己用或者还没进入生产模式,那没问题。但是如果你的项目一旦进入生产,请务必先把你的node_module删除干净,然后用npm install安装一遍,不要嫌慢或者麻烦,这将为你在以后避免掉更多的修复bug的机会。要记住这点,如果你执意而行,那或许待会儿你会回到这里的。
接下来,如果你是用AngularCli构建的项目,并且之前是使用的cnpm方式安装的node_module,请按照下面的步骤走一遍,如果一直都是用的npm,那么请跳过第一步:
删除你的node_module
打开你的项目中的package.json,在“dependencies”中加入:
"primeng": "^4.1.0", "font-awesome": "^4.7.0"
打开你的项目中的.angular-cli.json,在“styles”中加入:
"../node