Requirejs:当我尝试通过requirejs获取它时,函数未定义

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Requirejs:当我尝试通过requirejs获取它时,函数未定义相关的知识,希望对你有一定的参考价值。

我尝试从js文件中获取一些函数,我通过requirejs包含它,但它不起作用。

这是我做的:

test.js

define(['jquery'], function($){
   "use strict";
       function hello()
        {
            alert('hello from function');
        }    
});

requirejs-config.js

var config = {
    map: {
        '*': {
            module: 'Vendor_module/js/test',
        }
    }
};
console.log('foo'); // i get well "foo" in console

html

<script type="text/javascript">
    require(['jquery', 'module'], function($) {
        hello();
    });
</script>

结果:

ReferenceError: hello is not defined

谢谢。

答案

你需要在test.js中返回hello函数

define(['jquery'], function($){

"use strict";
      return function hello()
        {
            alert('hello from function');
        }    
});

并且您可以在要求的回调中使用该函数。

require(['jquery', 'module'], function($, hello) {
    hello();
});

以上是关于Requirejs:当我尝试通过requirejs获取它时,函数未定义的主要内容,如果未能解决你的问题,请参考以下文章

导入路径../“ dot dot slash”在requirejs中对我不起作用?

cesiumWorkerBootstrapper使用RequireJS importScripts时出错

在最小文件中使用React-dom和RequireJS

RequireJS

Requirejs 和 AngularJS 中依赖注入

将 Jquery.hammer 和 Hammer 2.0.2 与 RequireJS 一起使用