Windows 10重新安装后,Nodemon和webpack-dev-server热重装在WSL 2下不工作

9fkzdhlc  于 11个月前  发布在  Webpack
关注(0)|答案(3)|浏览(105)

几天前我重新安装了Windows 10。我正在开发全栈Web应用程序,使用express作为后端,React.js作为前端。我使用nodemon来实现服务器和webpack-dev-前端服务器。值得一提的是,我使用的是WSL 2。我注意到nodemon在保存文件时没有React。我不得不手动输入rs重新加载。起初认为这是一个问题,nodemon.在这里寻找类似的问题,但我发现的是--watch,这并没有帮助.不是说我已经尝试了webpack和问题仍然存在我是毫无头绪.这里是一些有用的信息:webpack命令webpack-dev-server --host 0.0.0.0 --config ./webpack.config.js --mode development.

webpack.config.js

module.exports = {
    entry: ["babel-polyfill", "./app/index.jsx"],
    module: {
        rules: [
            {
                test: /\.(js|jsx)$/,
                exclude: /node_modules/,
                use: ["babel-loader"],
            },
            { test: /\.css$/, use: ["style-loader", "css-loader"] },
            {
                test: /\.(jpg|png|svg)$/,
                loader: "file-loader",
                options: {
                    name: "[path][name].[hash].[ext]",
                },
            },
        ],
    },
    resolve: {
        alias: {
            components: __dirname + "/app/components",
            reducers: __dirname + "/app/reducers",
            constants: __dirname + "/app/constants",
            actions: __dirname + "/app/actions",
            store: __dirname + "/app/store",
            styles: __dirname + "/app/styles",
            assets: __dirname + "/app/assets/",
            api: __dirname + "/app/api/",
        },
        enforceExtension: false,
        extensions: [".js", ".jsx"],
    },
    output: {
        path: __dirname + "/public",
        publicPath: "/",
        filename: "index.js",
    },
    devServer: {
        contentBase: "./public",
        port: 8080,
    },
};

字符串
此外,这两个都是工作正常的Linux笔记本电脑和罚款之前,重新安装。

e7arh2l6

e7arh2l61#

我自己解决了这个问题。只是把它贴在这里,以防有人遇到同样的问题。我的系统现在和重新安装之前的区别是,我升级到了WSL 2。由于某种原因,nodemon和webpack-dev-server热重载在WSL 2中不起作用。降级到WSL 1解决了这个问题。
编辑:为了让它在WSL 2中工作,该项目需要在Linux文件系统中。

hrirmatl

hrirmatl2#

试试这个:

module.exports = {
  //...
  watchOptions: {
    poll: 1000 // Check for changes every second
  }
};

字符串
Watch and WatchOptions
或者将您的文件移动到WSL文件系统:

\\wsl$\<distroname>\home\<username>

jdgnovmf

jdgnovmf3#

试试这个,它对我很有效:

webpack -w --watch-poll

字符串

相关问题