2015-04-05 79 views
2

我用JetBrains WebStorm创建了一个Node.js Express App。我使用npm(通过文件 - >设置 - > Node.js和NPM)来安装名为validator的包,用于字符串验证。如何从HTML中的节点模块引用js文件?

该软件包安装在node_modules,这很好。如果我在我的服务器代码中执行var validator = require('validator');,则可以成功使用验证功能。

问题是我也想在客户端JavaScript中使用验证器。我可以包括这样的脚本:

<script src="/javascripts/xss-filters.min.js"></script> 

但这意味着我不得不从node_modules文件夹复制XSS-filters.min.js进入公众JavaScript的文件夹。然后,如果我用npm更新软件包,文件将不同步。

是否有一些方法可以参考node_modules从我的角度来看,还是创建某种链接文件或文件引用或某种?我宁愿不必手动维护。

回答

6

您应该考虑使用browserify,它允许您通过构建所有依赖关系来在浏览器中需要模块。所以基本上你的代码,就像您在服务器端http://browserify.org

+0

我很欣赏这是一个非常古老的问题/答案 - 但我试图让我的头在这附近。如果没有browserify,需要在HTML中的脚本标记中引用所有node_modules?当NPM更新一个包时,脚本路径会被破坏吗? – DJC 2017-02-13 17:09:58