必须使用npm模块吗?

时间:2018-06-24 06:33:36

标签: angular npm cdn

我是Node.js的新手,正在尝试了解节点功能。现在我正在开发一个Angular 2项目,在这里我可以看到每个插件都是从 node_modules 文件夹中导入的。

我的问题是,是否必须从 node_modules 导入所有内容?如果要使用CDN链接怎么办?

例如,如果我想使用 datatable ,并且拥有其CDN(https://cdn.datatables.net/1.10.19/js/jquery.dataTables.min.js)的链接,而不是使用node_modules。

2 个答案:

答案 0 :(得分:2)

当然可以。但是...

Why modules?

  

使用称为“摇树”的技术,捆绑程序可以对代码依赖项进行静态分析,并创建仅包含引用模块的捆绑程序。这样可以大大减少捆绑包的大小。

Tree shaking

  

Tree Shaking是创建应用程序捆绑包的一种优化方法。这个想法是创建一个只包含应用程序直接使用的代码的包。未使用的模块将从最终捆绑包中排除。结果,我们最终可能会得到一个大大更小的应用程序包。

速记: 需要记住的主要事情是 :您只应使用将要使用的这些代码部分。多亏有了模块,您才能够做到这一点,也许现在似乎还不太清楚,但是随着您的技能发展而已。

答案 1 :(得分:-1)

不,不是,但是据我所知,如果index.html中有很多导入,它会影响应用程序的性能。而且,它看起来很乱。