【发布时间】:2019-01-02 19:16:06
【问题描述】:
我刚刚在 WordPress 主题中设置了 Webpack。
主题使用 Bootstrap,在这方面,bootstrap.min.js 之前已像这样加载:
wp_enqueue_script( 'bootstrapjs', get_stylesheet_directory_uri() . '/assets/js/bootstrap.min.js', array( 'jquery' ) );
WordPress 内置了 jQuery,因此通过将 jquery 指定为依赖项,这可以正常工作并且每个人都很高兴。
但是,现在我正在尝试使用 Webpack。我仍然习惯它,我的印象是,将尽可能多的脚本编译成一个是一种很好的风格,以限制服务器必须发出的请求以获取所有资源。
所以我被撕裂了...是吗
解决方案 1) 不使用 Webpack 编译 Bootstrap.min.js。
...然后将该文件直接放在资产文件夹中并将其排入队列(完全绕过 Webpack)。
优势:我可以只使用 WordPress 的 jQuery,这样就不需要加载两次(这也可能导致问题)。
缺点:文件结构混乱,因为有些文件是通过 Webpack 加载的,有些则不是。这也将导致更多的文件(更多的服务器请求)。
解决方案 2) 使用 Webpack 编译 Bootstrap.min.js。这需要我导入jquery 和popper,所以我可以要求Bootstrap.min.js 文件而不会出错。
优点:更好的文件结构和更少的服务器需要请求的文件。
缺点: Jquery 需要加载两次(这可能是一团糟)。这也可能导致更大的文件大小。
【问题讨论】: