【问题标题】:Execute js multiple times多次执行js
【发布时间】:2019-02-07 19:53:26
【问题描述】:

我有一个遗留的 Symfony 应用程序,到处都有全局变量。我正在尝试使用 webpack。但是我有这个问题,我有发送 ajax 请求的按钮,获取 HTML 页面(树枝页面)。

这些页面有脚本。所以我这样做的方式是有以下入口点:

  • 初始页面:EntrypointA.js
  • HTML 页面(在运行时由 ajax 请求获取):EntrypointB.js

所以在这里,我有几个问题:

  1. 对于这种情况,这是要走的路吗(多个入口点)?
  2. 如果我多次获取 HTML 页面,入口点只会执行一次......有没有办法避免这种情况?并在每次获取入口点时执行它。

EntrypointB 在获取的 HTML 中存在的 dom 元素上具有 jquery 代码绑定。所以它必须每次都执行

我也使用optimization: { runtimeChunk: 'single' },因为在EntrypointA中导入的文件必须引用EntrypointB中的一些文件

谢谢

【问题讨论】:

  • 注意:再次尝试迁移到 webpack 后,optimization: { runtimeChunk: 'single' } 是每个模块按照docs 仅执行一次的原因不幸的是,删除此优化会导致 jquery 及其插件(基本上 jquery 被包含一次,然后 another-jquery-plugin 被包含,然后另一个文件包含 jquery,因此覆盖第一个版本并且 another-jquery-plugin 不再可用)

标签: html ajax symfony webpack webpack-4


【解决方案1】:

Webpack 用于将本来应该放在一起的东西捆绑在一起(事实上只是前端部分)。例如,所有 JS 到一个最小文件中,所有 CSS - 相同,散列和组织图像和一些文件夹等。但是从你所说的看起来你正在尝试捆绑不相关的东西,比如前端 JS 和后端树枝模板。捆绑 JS(jQuery,一些运行时脚本)是可以的,但不要管模板。

Symfony 应用程序没有后端路由器可以将您的请求解析为相应的树枝模板吗?

【讨论】:

  • 我不是要捆绑树枝模板,而是多次执行树枝模板中的脚本。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-01-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多