我正在设置一种方法让我保持自己喜欢的requireJS工作方式并将其与Wordpress集成。在Wordpress中使用requireJS
最大的问题是如何加载jQuery。 Wordpress通过wp_enqueue_script加载jQuery,这需要保持这种方式,因为我经常使用的一些Wordpress插件需要通过这种方式添加jQuery。然后我不想在我的requireJS设置中加载第二个jQuery版本。因此,解决这个经过一番寻找是我想出:
模板/ footer.php
<script>
if (typeof jQuery === 'function') {
define('jquery', function() { return jQuery; });
}
require(['/assets/js/sample-common.js'], function (common) {
require(['sample-bootstrapper']);
});
</script>
如果jQuery的已经被添加到页面上,如果已经它然后看到它将其设置为模块值。
我的问题是,我应该把它留的jQuery是在全局命名空间,或按照下列指示:
http://requirejs.org/docs/jquery.html#noconflictmap
上述问题是,我可能会需要包括AREN jQuery插件AMD是否兼容,是否值得努力使它们兼容AMD或者我想过的另一个解决方案是从noConflict声明中删除真正的声明,该声明使'jQuery'保持在允许插件运行的全局命名空间中。
这不是一个问题,更需要最佳实践建议。任何将非常感谢!
谢谢!
我认为你还需要把'jquery'放在你的需求中,除了定义它否? – WraithKenny