gpt4 book ai didi

javascript - 将 jQuery UI 对话框与 Backbone.js 和 RequireJS 结合使用

转载 作者:行者123 更新时间:2023-12-01 05:29:57 25 4
gpt4 key购买 nike

我想在我的第一个使用主干的网页上弹出窗口。

define(['jquery',
'jqueryui',
'underscore',
'backbone',
'api',
'text!' + versions.getVersionedPath('templates/form.html')

function ($, jqueryui, _, Backbone, Api, Form) {
var widok = Backbone.View.extend({
formularz: _.template(Form),
el: 'body',
events: {
'click #test': 'test',
'click .del': 'usun',
'click #elo': 'test2'
},
initialize: function () {
this.$el.html(this.formularz());
self = this;
console.log('This model has been initialized.');
this.render();
},
render: function () {
console.log('Showing up');
this.$el.html(this.formularz());
},
test: function () {
self.showNews();
return false;

},
test2: function () {
$("#dialog-confirm").dialog({
resizable: false,
height: 140,
modal: true,
buttons: {
"Delete all items": function () {
$(this).dialog("close");
},
Cancel: function () {
$(this).dialog("close");
}
}
});
}
});

return {initialize: function () {
console.log('Initialize');
new widok;
self.showNews();
console.log('blablablablabla');
}};

});

我有这样的功能,但是当我尝试使用它时,我遇到了类似的错误

Uncaught TypeError: $(...).dialog is not a function.

我已经定义了jquery和jqueryui。有人可以帮助我吗?

将其放在 requirejs 配置中

shim: {
jqueryui: {
"deps": ['jquery']
},

最佳答案

您共享的代码存在语法错误,您没有关闭依赖项数组。

jQuery UI 从 1.11.0 版本开始支持 AMD。这是 guide与 AMD 加载器一起使用。

因此,如果您使用的是最新版本,请从配置中删除 shim

另请注意,模块中的 jqueryui 将为 undefined,因为它不会导出任何内容,因此最好在依赖项末尾添加此类内容,例如:

define([
'jquery',
'underscore',
'backbone',
'api',
'text!' + versions.getVersionedPath('templates/form.html'),
'jqueryui'],
function ($, _, Backbone, Api, Form) {});

关于javascript - 将 jQuery UI 对话框与 Backbone.js 和 RequireJS 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38178533/

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