我正在编写一个 Node JS 应用程序,我需要 jQuery UI 和 jQuery Mobile。我正在使用 Browserify 将模块打包到单个 js 文件中。
我有以下代码可以在我的项目中包含 jQuery 和 jQuery UI。
var jQuery = require('jquery');
require('jquery-ui-browserify');
而且它有效。当我尝试添加 jQuery Mobile 时出现问题,或者需要:
require('./lib/jquery.mobile-1.4.0.min.js');
或者使用脚本标签
<script src="/lib/jquery.mobile-1.4.0.min.js" type="text/javascript"></script>
同样的错误:
"Uncaught TypeError: Cannot set property 'mobile' of undefined".
我知道我收到此错误是因为 jQuery Mobile 在 Window 中查找 jQuery 对象但没有找到,但如何解决? npm 上没有 jQuery 移动模块。
最佳答案
这是一个使用 browserify-shim 的简单可运行演示和 jquery + jquery 移动版: https://gist.github.com/mchelen/a8c5649da6bb50816f7e
最重要的几行是:
package.json
"browserify-shim": {
"jquery": "$",
"jquery-mobile" : { "exports": "$.mobile", "depends": [ "jquery:$" ] }
},
entry.js
var $ = require('jquery');
$.mobile = require('jquery-mobile');
关于javascript - 使用 Browserify 在 Node JS 项目中包含 JQuery Mobile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21428993/