jquery 将脚本标记为已在require js中定义

avkwfej4  于 2023-08-04  发布在  jQuery
关注(0)|答案(1)|浏览(84)

我必须通过bundle将一些脚本移动到同步加载,并且我希望将这些脚本设置为已经定义的,因此require.js不会在下一次调用中向服务器请求它们。
让我解释一下:
1.我有一些到处都需要的脚本,例如。i18n和jQuery。因此,我有数百个如果调用所有的项目,如
第一个月
1.我将'jquery''i18n''commonjs'捆绑到一个脚本core.js中,现在将其插入布局<script src="/core.js"></script>
jQuery,i18n中的所有函数现在都可以全局访问,而不需要它们。我想特别对reuire.js说,这些脚本已经加载了,这是bundles应该做的事情。
我读过article关于使用bundle的文章,并尝试将bundle放入我的配置文件中

bundles: {
    'core': ['jquery', 'i18n', 'commonjs']
}

字符串
但是它不起作用,有很多错误,正如我所理解的,使用bundle的唯一方法是使用r.js,它优化了js和文件夹。
实际上,我只想为require.js设置一些已经加载的脚本。有什么肮脏的方法吗?

vql8enpb

vql8enpb1#

没有将脚本标记为已定义的配置选项。您可以自己调用define,使用模块名和适当的返回值。例如,如果在通过RequireJS加载任何模块之前,使用script元素加载jQuery,则可以执行以下操作:

define("jquery", [], function () {
  return $;
});

字符串
上面的代码使得每当任何模块需要模块jquery时,它们都会得到$的值。我通常放置这样的模块,就像在调用require.config之前放置的模块一样。对他们来说只是个方便的地方。

相关问题