【问题标题】:Chrome VM files duplicate javascriptChrome VM文件重复javascript
【发布时间】:2014-04-19 15:23:59
【问题描述】:

我在开发网站时遇到问题。我正在使用 chrome 来调试 javascript 函数。在我的一个页面上,我看到以下内容:

你可以看到我自己的 javascript 文件被执行了,search.js。此文件有一个副本,名为 VM1769。该文件也执行相同的代码,因此发送了两次搜索请求。

我四处搜索,看到有人通过禁用缓存(在 DevTools 打开时)解决了这个问题,但这对我不起作用。我尝试了另一个版本的 Chrome,问题仍然存在。

有人有解决办法吗?

【问题讨论】:

标签: javascript google-chrome duplicates


【解决方案1】:

您好,我也遇到了这个问题,这导致我的自动完成文本输入中有两个重复的选择。我所做的只是创建一个全局标志来了解脚本文件是否已经执行。我知道这不是解决方案,但我只是想在这里分享这个,因为阻止 VM 文件的执行已经解决了我的问题,但我还需要知道如何确定地解决这个问题。

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,发现我确实包含了两次相同的 JavaScript 文件。 因此,Chrome 将第二次执行显示为 VM 脚本对我来说是不合逻辑的,但是当我删除重复的包含时,它就结束了。

    【讨论】:

      【解决方案3】:

      我遇到了这个问题。

      对我来说,这是由于 webpack 注入了我的 javascript 文件的第二个实例以进行调试。

      删除最后一行 (mode: "development") 消除了重复的脚本。

      const webpack = require('webpack');
      
      module.exports = {
          entry: {
              a: [./scripts/xxx.ts"],
              b: ["./scripts/yyy.ts"],
              c: ["././scripts/zzz.ts"]
          },
          output: {
              // runtime asset location
              path: __dirname + "/dist/js/bundles",
              filename: '[name].js',
              library: "$",
              libraryTarget: "umd"
          },
          plugins: [
              new webpack.CleanPlugin(),
          ],
          module: {
              rules: [
                  { test: /\.ts$/, use: 'ts-loader', exclude: /node_modules/ },
              ],
          },
          resolve: {
              extensions: ['.ts'],
          },
          mode: "development"
      };
      

      【讨论】:

        猜你喜欢
        • 2013-06-26
        • 2015-01-01
        • 2011-04-28
        • 2012-01-30
        • 2016-11-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多