我正在编写一个同时需要jQuery UI和jQuery Mobile的Node JS应用程序。我正在使用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>
我犯了同样的错误:
“未捕获的TypeError:无法设置未定义的属性'mobile'”。
我知道我收到此错误,是因为jQuery mobile在Window中查找jQuery对象却找不到它,但是如何解决它?npm上没有jQuery mobile模块。
这是一个使用browserify-shim和jquery + jquery mobile的简单可运行演示: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');
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句