javascript - 使用 webpack 捆绑 js 应用程序作为 WordPress 插件

标签 javascript wordpress reactjs webpack browserify

我正在开发一个 WordPress 插件,它在很大程度上依赖于管理端的 javascript。因为它是一个插件并且在管理面板上工作,所以我必须小心防止与其他插件的js代码发生任何冲突,因为它就像一个公共(public)地方,每个插件都可以加载js库。

我计划使用 WordPress 的默认 js 脚本(如 jQuery、underscore、jquery-ui 等)作为外部脚本,并将其余依赖项(react、redux、digital.js 等)与 webpack 捆绑在一起。

这种方法可能会导致与另一个插件的js代码发生冲突吗?

也许,如果;

  • 另一位插件作者决定像我一样使用 webpack。
  • 另一个插件加载了一个 js 库,它已经在我的依赖项列表中,但它是非常旧的版本。

Webpack、browserify 或其他工具或方法可以帮助我防止此冲突问题吗?

最佳答案

通过 webpack 捆绑的任何内容(包括 webpack 运行时本身)都不会全局公开。您可以捆绑自己的 jQuery(例如,您显然正在使用 WordPress 的)并将其与现有的 jQuery 一起安全地使用,两者都不会出现问题。您甚至可以加载多个 webpack 版本而不会发生冲突(它们彼此“不知道”)。 Webpack 将其所有代码包装在立即调用的函数中,因此所有内容都位于该函数的本地范围内。因此,除非您明确地使某些内容全局化,否则不存在发生冲突的风险。

关于javascript - 使用 webpack 捆绑 js 应用程序作为 WordPress 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35564267/

相关文章:

css - 如何使用 css 并排放置字段

javascript - 为什么 React 路由在组件中不起作用?

javascript - 使用 jQuery 在有效数据上显示提交按钮

javascript - Backbone.js 集合在获取操作后不调用 "Reset"事件

javascript - 谷歌地图 - 欺骗计算机将单击视为双击

css - 中间带有 Logo 的水平导航

javascript - Freebase:如何通过 JavaScript 使用参数 "cursor"

php - 在 WordPress/WooCommerce 中将税收更改为 GST

javascript - 在数组中推送许多对象会删除数组中所有先前的对象(使用 Hooks 进行 react )

node.js - 在本地主机上获取空白页面 :3000 while using npm along with reactjs