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

Requirejs : function is not defined when i try to get it via requirejs

我试图从我通过 requirejs 包含的 js 文件中获取我的 html 中的一些功能,但它不起作用。

这是我所做的:

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

谢谢。

您需要 return hello 在 test.js

中发挥作用
define(['jquery'], function($){

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

并且您可以在提供给 require 的回调中使用该函数。

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