【问题标题】:Why is webpack --watch not updating when specific files are updated为什么更新特定文件时 webpack --watch 不更新
【发布时间】:2015-03-27 02:49:27
【问题描述】:

我有一个大小合适的 webpack 应用程序,它被大量组织成特定的部分。一切都适用于纯 javascript 和 jsx 文件,因为每当我更新任何内容时,它都会逐步重建包。

我现在在与我所有其他人相同的根目录中添加了一个新文件夹,并在其中创建了一个新的 javascript 文件。 Webpack 也知道要查找它,因为它在包中包含代码,并且只要它看到其他文件之一发生更改,它就会正确重建所有更改,包括在我的新 javascript 文件中。

但是,由于某种原因,每当我保存对这个 javascript 文件的更改时,webpack 都不会检测到它需要从中重新加载更改。因此,如果我所做的唯一更改是在这个 javascript 文件中,则不会创建新的捆绑包,我必须 ctrl+c 并重新运行 webpack。

我已尝试重命名文件夹、重命名 javascript 文件以及其他几个无济于事的步骤。

任何人都可以对可能发生的事情提供任何见解,或者有什么方法可以让我获得有关 webpack 看到或没有看到的更多信息?

【问题讨论】:

  • 这可能是一个长镜头,但看看this 帖子:

标签: javascript webpack


【解决方案1】:

使用旧的 watcher 插件似乎可以解决我需要的问题。通过以下方式在我的配置中完成:

plugins: [
    new webpack.OldWatchingPlugin()
],

【讨论】:

  • 这为我解决了这个问题,这个问题是在更新 webpack 后开始的......奇怪。
  • 这也修复了使用ExtractTextPlugin 时导入的.scss 文件不会触发编译的问题。谢谢!
  • 我在使用 webpack 1.13.0 时遇到了同样的问题,这解决了我的问题。奇怪
  • 还修复了我在 windows 7 和 node v6.0 上的 webpack v1.13.0 上的问题,非常感谢
  • 它仍然对我不起作用。而现在,webpack.OldWatchingPlugin() 已被删除。 github.com/webpack/webpack/pull/2604/files
【解决方案2】:

我也刚遇到这个问题,这是因为“require”函数调用中文件的字符串大小写与文件系统不同。它仍然包含在捆绑包中,但没有被用于与 webpack-dev-server 进行实时重新捆绑。修复 require 调用以修复正确的大小写。

【讨论】:

    【解决方案3】:

    我也被这个问题困住了。因此,如果上述任何一项都不适合您,我找到了另一种解决方案。如果您使用 Chrome,您可以安装一个名为“clear cache”的扩展程序或任何其他可以清除缓存的扩展程序。只需使用此扩展程序清除缓存,然后重新加载页面,您就会看到更改。所以是的,它可能不是您希望它工作的方式,而只是一种替代方式。 :)

    【讨论】:

      【解决方案4】:

      我有类似的情况,但只有一个文件。问题是组件的路径有不同大小写的字母,而不是目录路径中的字母。

      目录:

      components/UI/fields/
      

      错误:(“字段”中“F”的大小写不正确)

      import PrivacyField from 'components/UI/Fields/PrivacyField';
      ...
      

      正确:

      import PrivacyField from 'components/UI/fields/PrivacyField';
      ...
      

      【讨论】:

        猜你喜欢
        • 2021-01-28
        • 1970-01-01
        • 2017-07-31
        • 2014-03-22
        • 2015-11-10
        • 1970-01-01
        • 2013-09-10
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多