gpt4 book ai didi

jquery - 使用 require.js 配置 jquery 数据表并与backbone.js 一起使用

转载 作者:行者123 更新时间:2023-12-03 22:58:26 24 4
gpt4 key购买 nike

我想为我的一个表使用 jquery dataTables 插件,该表是使用backbone.js 动态生成的

在探索了使用 require.js 配置 dataTable 的选项之后,我提出了这个解决方案

这是来 self 的 main.js 文件

require.config({
baseUrl : 'js',
paths: {
jquery: '../../assets/js/libs/jquery/jquery-1.10.2.min',
underscore: '../../assets/js/libs/underscore/underscore',
backbone: '../../assets/js/libs/backbone/backbone',
dataTable : '../../assets/js/libs/jquery/jquery.dataTables.min.js'
},

shim : {

backbone : {
deps : [ "underscore", "jquery" ],
exports : "Backbone"
},

underscore : {
exports : "_"
},

dataTable : {
deps : ["jquery"],
exports : "Datatable"
}

},

});

按照此配置运行,应用程序可以完美运行,但在我的 app.js 中使用此对象后会破坏应用程序的正常流程

define([
'jquery','underscore', 'backbone', 'router', 'dataTable'
],

function($, _, Backbone, Router, Datatable) {

var initialize = function() {

// calls router.js's initialize() function
Router.initialize();

}

return {
initialize : initialize
};

});

我在 firebug 中收到以下错误

错误:脚本错误:dataTable http://requirejs.org/docs/errors.html#scripterror

如果我不在我的 app.js 中包含 dataTable 那么我会得到

$(...).dataTable 不是函数

有人可以帮我找出问题所在吗?

最佳答案

不需要在 dataTables 插件的 requireJS 配置中进行填充,因为它已经是 AMD 模块,只需将路径中的键从 dataTable 更改为 datatables定义,这是因为它的AMD模块是用这个名称定义的,请看一下源代码here .

require.config({
baseUrl : 'js',
paths: {
jquery: '../../assets/js/libs/jquery/jquery-1.10.2.min',
underscore: '../../assets/js/libs/underscore/underscore',
backbone: '../../assets/js/libs/backbone/backbone',
datatables : '../../assets/js/libs/jquery/jquery.dataTables.min.js'
},

shim : {

backbone : {
deps : [ "underscore", "jquery" ],
exports : "Backbone"
},

underscore : {
exports : "_"
}

},

});

现在,当您导入数据表插件时,$("selector").dataTable() 函数将可用

define(['jquery','underscore', 'backbone', 'router', 'datatables'],     
function($, _, Backbone, Router) {

var initialize = function() {

// calls router.js's initialize() function
Router.initialize();

}

return {
initialize : initialize
};

});

关于jquery - 使用 require.js 配置 jquery 数据表并与backbone.js 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20093957/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com