【发布时间】:2014-02-27 13:01:01
【问题描述】:
我刚刚开始使用 Require.js。我有基本的工作。
这是我要解决的问题:我正在使用 KnockoutJs 和 Knockout.validation。我总是一起使用这些文件。所以我想做一些我只需要引用 knockout 的事情,它将包括 knockout.validation。
这个:(加载敲除和敲除.validation)
define(["knockout"],
function (ko) {
return {
name: ko.observable();
};
}
);
而不是这个:
define(["knockout", "kovalidation"],
function (ko) {
return {
name: ko.observable();
};
}
);
我需要对 ko 的引用,我只需要加载其他的。
更新:
根据下面的答案,我正在尝试捆绑配置选项。不幸的是,我无法让它工作。
我的理解是配置应该是这样的:
<script>
var require = {
baseUrl: "/Scripts",
bundles: {
'knockout-3.0.0': ['knockout.validation']
}
};
</script>
<script src="~/Scripts/require.js" data-main="views/home"></script>
然后在我的 home.js 中:
require(["knockout-3.0.0"], function (ko) {
...
});
在 home.js 中,我希望看到 knockout 和 knockout.validation 都已加载,但仅加载了 knockout。
更新:
似乎配置中的 bundle 选项应该可以满足我的需要,但至少在这一点上,根据我所掌握的信息,这不是正确的解决方案。 @daedalus28 提供了一些很好的信息和一个很好的例子,帮助我提出了一个可以接受的解决方案。我已经接受了这个答案,如果有更好的答案很长,请投票,这样我们都会知道它更好。
【问题讨论】:
标签: knockout.js requirejs knockout-validation