5

我正在尝试使用requirejs以下列方式加载knockoutjs:

<script type="text/javascript">
    require(['scripts/knockout-2.2.1.debug'], function() {
        var someModel = {
            firstname: ko.observable('asd')
        };
        ko.applyBindings(someModel);
    });
</script>

使用顶部的脚本标记加载 require.js 的位置。当这段代码执行时,我得到一个 ko is not defined 错误。做类似的正确方法是什么?

4

1 回答 1

5
require(['scripts/knockout-2.2.1.debug'], function(ko) {

我不确定,但看到 requirejs 上的示例,我猜这些是在该回调函数的范围内加载的。所以,除非你在你的函数中接受它,否则你不能使用它。

是的,你是对的(至少,看到他们的例子)。如果包含 4 个库,则需要接受 4 个参数。例如,如果你加载了jquery和knockout,你可以这样写:

require(['scripts/jquery.js', 'scripts/knockout-2.2.1.debug'], function($, ko) {
于 2013-03-03T08:08:29.323 回答