Require.js:`define`是否可以使用node-style`next()`来延迟返回值?

时间:2015-09-16 09:29:08

标签: requirejs

请参阅以下代码:

define(["dep1"], function (dep1, next) {

    // necessary works here so that `dep2` is ready
    // kind of circular dependency.
    someNecessaryWork();

    require(["dep2"], function (dep2) {
        // return value in node-style, using `next()`
        next(someValue);
    }
    // do not return value as normal, no `return someValue` here
}

require.js能够做到这一点吗?现在我正在使用函数来实现这一目标。

define(["dep1", "dep2Fn"], function (dep1, dep2Fn) { 
    someNecessaryWork();
    dep2Fn();
    return someValue;
});

但感觉不直观。

1 个答案:

答案 0 :(得分:1)

define不允许您通过回调设置模块的返回值。你在第二个片段中展示的是你是如何做到的。你只需要习惯它。