gpt4 book ai didi

javascript - Backbone & Underscore 未定义,加载思想

转载 作者:行者123 更新时间:2023-12-02 07:05:00 25 4
gpt4 key购买 nike

我目前正在尝试学习 BackboneJS 和随之而来的东西,但我无法真正让它发挥作用。我的问题是,一旦我尝试使用 Backbone 对象,我就会遇到麻烦。所以我试着记录他们两个,给予。

undefined main.js:23
undefined main.js:24

代码如下。

// RequireJS configuration.
require.config({
paths: {
// Major dependecies.
jquery: 'libs/jquery/jquery-1.8.3.min',
underscore: 'libs/underscore/underscore-min',
backbone: 'libs/backbone/backbone-min',

// Template dir.
templates: '../templates'
},

// Append query string, to avoid browser caching, while in dev.
urlArgs: "bust=" + (new Date()).getTime()
});

// Start application.
require([
'underscore',
'backbone'
// 'router'
], function(_, backbone) {
console.log(backbone);
console.log(_);
// Router.initialize();
});

如您所见,我尝试在我的路由器中使用 Backbone 对象,但没有成功。然后我在我的 main.js 中尝试了同样的事情。

最佳答案

您需要使用 require shim,因为 Backbone 和 Underscore 不支持开箱即用的 AMD。

require shim 允许您加载非 AMD 模块(参见 here)。请注意,exports 对象是将用作模块的对象的名称。

paths: {
// Major dependecies.
jquery: 'libs/jquery/jquery-1.8.3.min',
underscore: 'libs/underscore/underscore-min',
backbone: 'libs/backbone/backbone-min',

// Template dir.
templates: '../templates'
},
shim: {
backbone: {
deps: ["underscore", "jquery"],
exports: "Backbone"
},

underscore: {
exports: "_"
}
}

另一种方法是将脚本直接包含在您的 HTML 中。

<script src="libs/jquery/jquery.js"></script>
<script src="libs/underscore/underscore.js"></script>
<script src="libs/backbone/backbone.js"></script>

关于javascript - Backbone & Underscore 未定义,加载思想,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13940369/

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