因此,我正在使用node / express + jade组合编写应用程序。
我有client.js,已在客户端上加载。在该文件中,我有调用其他JavaScript文件中的函数的代码。我的尝试是使用
client.js
var m = require('./messages');
为了加载内容messages.js(就像我在服务器端一样),然后再加载该文件的调用函数。但是,require未在客户端定义,并且抛出形式的错误Uncaught ReferenceError: require is not defined。
messages.js
require
Uncaught ReferenceError: require is not defined
这些其他JS文件也在客户端的运行时加载,因为我将链接放置在网页的标题处。因此,客户端知道从这些其他文件导出的所有功能。
如何从打开服务器套接字messages.js的主client.js文件中的其他JS文件(如)调用这些函数?
这是因为require()浏览器/客户端JavaScript中不存在。
require()
现在,您将不得不对客户端JavaScript脚本管理做出一些选择。
您有三种选择:
<script>
CommonJS 客户端实现包括:
(其中大多数需要在部署之前进行构建)
您可以阅读有关我的Browserify与(不推荐使用)Component比较的更多信息。
AMD的 实现包括:
请注意,在搜索选择与之搭配的产品时,您会了解到Bower。Bower仅用于程序包依赖关系,并且在CommonJS和AMD等模块定义上不受质疑。
希望这会有所帮助。