未捕获的AssertionError:路径必须是Require.js中的字符串错误

时间:2013-09-18 08:38:24

标签: javascript requirejs node-webkit

我在使用node-webkit的简单示例中遇到以下错误:

Uncaught AssertionError: path must be a string

的index.html     

//base.js

require(["test"], function(test) {
    test.init();
});

//test.js

define(function(){
   window.c = window.console;
   return {
       init: function(){
           c.log('test.init');
       },

       destroy: function(){
           c.log('test.destroy');
       }
   }
});

2 个答案:

答案 0 :(得分:7)

看起来新版本的RequireJS除requirejs()外还有一个名为require()的函数,以避免与节点require()发生冲突。

答案 1 :(得分:4)

节点提供了自己的require(),因此我必须复制它window.requireNode,然后将其添加回base.js回调中:

<script>
    window.requireNode = window.require;
    window.require = undefined;
</script>

<script data-main="js/base" src="/bower_components/requirejs/require.js"></script>


require(["test"], function(test) {
    window.require = window.requireNode;
    test.init();
});