1

我在 wordpress 插件中使用 requirejs。我正在尝试使用它,以便仅加载页面所需的 javascript。我的想法是有一个 main.js 文件来加载当前页面的 js,但我想知道如何告诉 main.js 加载什么文件。

require( 
    [ "pages/name-of-the-page" ], // How do i tell require that we are on page x?
    function( page ) { 
        page.start();
    }
);

我在想用什么,也许我应该在服务器端设置一个cookie,读取它然后使用该数据?使用url参数猜测页面?我该怎么办?

4

1 回答 1

1

只在你的页面中加载核心 JS 模块似乎更明智main.js(因为它将在每个页面上加载),然后为每个页面require只加载你需要的代码。

一种粗略的方法是在 wordpress 中检查当前加载的页面,然后在那里加载文件:

<?php if (is_page('Contact')): ?>
<script>
    require(['scripts/pages/contact.js']);
    // Note use of a plain js file, and not a module
</script>
<?php endif; ?>

然后在contact.js

require(['some/contact/module'], function(contact) {
    // do cool stuff
});

我在这个答案中涵盖了类似的情况,这也可能有所帮助。

于 2012-06-06T19:16:26.303 回答