【问题标题】:What is the default root directory for webpack's devServer?webpack 的 devServer 的默认根目录是什么?
【发布时间】:2018-05-03 07:21:13
【问题描述】:

我已经配置了 Webpack,具有以下 devServer 配置:

devServer:{
  port: 8080,
  host: 'localhost',
  publicPath: 'http://localhost:8080/',
  ...
}

我怎么知道开发服务器的根目录在哪里。 从webpack的documentation,有一个设置devServer.contentBase,我的配置里没有这个设置。

devServer.contentBase (布尔字符串数组)

告诉服务器从哪里提供内容。仅当您要提供静态文件时才需要这样做。 devServer.publicPath 将用于确定应从何处提供捆绑包,并具有优先权。

默认情况下,它将使用您当前的工作目录来提供内容,但您可以将其修改为另一个目录:

我只是不明白devServer.publicPath 如何告诉服务器从哪里提供内容!。

[更新] 我认为它提供来自 Webpack 中 output.path 设置的文件。但不确定。

【问题讨论】:

    标签: webpack webpack-dev-server


    【解决方案1】:

    检查下面的代码,如果你看到publicPath: '/' 意味着它将采用webpack.config.js 所在的目录。

      devServer: {
                open: 'http://localhost:9000',
                port: 9000,
                publicPath: "/",
            },
    

    如果要指定文件夹,则需要传递文件夹名称,如下所示。

     devServer: {
                    open: 'http://localhost:9000',
                    port: 9000,
                    publicPath: "/foldername",
                },
    

    【讨论】:

    • 我需要提供 publicPath: 'http://localhost:8080/' 才能使热模块更换 (HMR) 正常工作。
    • @osama7901 ,您检查链接webpack.js.org/guides/hot-module-replacement,它可能会有所帮助,尤其是检查devServerplugin 部分
    猜你喜欢
    • 2016-07-05
    • 1970-01-01
    • 2011-06-26
    • 2021-10-17
    • 2020-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多