Requirejs模块无需使用即可使用

时间:2014-08-07 09:33:37

标签: javascript requirejs r.js

我已经读过这篇文章了:

Write Requirejs modules that work without requirejs

并检查了杏仁。但我无法让它发挥作用。

我的构建文件如下所示:

{
    "baseUrl" : "../",
    "name" : "build/almond",
    "include" : ["uploader"],
    "out" : "../uploader.min.js",
    "wrap" : {
        'startFile' : 'start.frag',
        'endFile' : 'end.frag'
    }
}

和我的start.frag

(function (root, factory) {
  if (typeof define === 'function') {
    define(factory);
  } else if (typeof exports === 'object') {
    module.exports = factory();
  } else {
    root.Uploader = factory();
  }
}(this, function () {

和我的end.frag

    return require('uploader');
}));

它适用于requirejs。

require(['uploader'], function(Uploader) {
 var uploader = new Uploader();
});

但我想能够在没有requirejs的情况下使用它,所以我可以使用脚本标记

<script type="text/javascript" src="uploader.js"></script>
<script>
 var uploader = new Uploader();
</script>

我怎样才能实现这个目标,还是必须重写我的库?

我认为jQuery已经这样做了。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

好吧,问题是当我加载了需要的库时,我正在尝试新的Uploader。

所以我无法使用这两种方法。

但是当我根本没有需要时,它工作正常。

我只是想让你知道以防其他人将来遇到这个问题。