如何从 HTML 中的节点模块引用 js 文件?
How do I reference a js file from a node module in HTML?
我使用 JetBrains WebStorm 创建了一个 Node.js Express 应用程序。我使用 npm(通过 File->Settings->Node.js 和 NPM)安装一个名为 validator 的包,用于字符串验证。
软件包安装在node_modules下,没问题。如果我在服务器代码中执行 var validator = require('validator');
,我可以成功使用验证函数。
问题是我也想在客户端使用验证器JavaScript。我可以像这样包含脚本:
<script src="/javascripts/xss-filters.min.js"></script>
但这意味着我必须将 xss-filters.min.js 从 node_modules 文件夹复制到 public javascripts 文件夹。然后,如果我用 npm 更新包,文件将不同步。
有没有什么方法可以从我的角度引用 node_modules,或者创建某种链接文件或文件引用之类的?我宁愿不必手动维护它。
您应该考虑使用 browserify,它允许您通过构建所有依赖项来在浏览器中要求模块。所以基本上你的代码就像你在服务器端所做的那样 http://browserify.org
您可以使用另一个名为 node-browserify
的 node.js 模块来完成
- how to use node.js module system on the clientside
您可以尝试使用bower, or yeoman。
bower - 将简化包含 js 库的过程。
yeoman - 将帮助您使用所需的库构建项目。
我使用 JetBrains WebStorm 创建了一个 Node.js Express 应用程序。我使用 npm(通过 File->Settings->Node.js 和 NPM)安装一个名为 validator 的包,用于字符串验证。
软件包安装在node_modules下,没问题。如果我在服务器代码中执行 var validator = require('validator');
,我可以成功使用验证函数。
问题是我也想在客户端使用验证器JavaScript。我可以像这样包含脚本:
<script src="/javascripts/xss-filters.min.js"></script>
但这意味着我必须将 xss-filters.min.js 从 node_modules 文件夹复制到 public javascripts 文件夹。然后,如果我用 npm 更新包,文件将不同步。
有没有什么方法可以从我的角度引用 node_modules,或者创建某种链接文件或文件引用之类的?我宁愿不必手动维护它。
您应该考虑使用 browserify,它允许您通过构建所有依赖项来在浏览器中要求模块。所以基本上你的代码就像你在服务器端所做的那样 http://browserify.org
您可以使用另一个名为 node-browserify
的 node.js 模块来完成- how to use node.js module system on the clientside
您可以尝试使用bower, or yeoman。 bower - 将简化包含 js 库的过程。 yeoman - 将帮助您使用所需的库构建项目。