使用带有require.js的jquery-ui datepicker

时间:2014-06-03 02:43:40

标签: javascript jquery jquery-ui backbone.js datepicker

我在这里搜索了一些问题,但没有得到任何解决方案。我正在datepicker backbone.js项目中使用require.js

main.js

requirejs.config({
   enforceDefine: true,
   paths: {
      "jquery": "libs/jquery/jquery-min",
      "underscore": "libs/underscore/underscore",
      "backbone": "libs/backbone/backbone-min",
      "jquery-ui" : "libs/jquery/jquery-ui"
   },
   shim : {
      "underscore": {
         deps: [],
         exports: "_"
       },
       "backbone": {
         deps: ["jquery", "underscore"],
         exports: "Backbone"
       },
       "jquery-ui" : ['jquery']
   }
});

以下是我的观点:

define(["jquery","underscore","backbone","jquery-ui"], ,function($, _, Backbone,jqueryUI){

   //view code block

});

只需像这样定义它,还没有调用jquery-ui的任何函数,然后我在控制台Error: No define call for jquery-ui http://requirejs.org docs/errors.html#nodefine中出现了一个错误。

任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:1)

要使其正常运行,请将 enforceDefine 设置为 false

根据官方docs

  

enforceDefine:如果设置为true,则在脚本中将引发错误   不调用define()或具有shim导出字符串值的负载   可以检查。

答案 1 :(得分:0)

对于jquery插件,我更喜欢转换为UMD模块,这是避免污染全局变量的更清晰的方法