- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我来自哪里
我使用 webpack 已经有一段时间了,但这是我第一次没有修改它的入门工具包,而是尝试从头开始设置所有内容。
我遵循 this nice article on survivejs.com 并继承了那里描述的一些方法,将它们与我之前的一些设置相结合(例如根据发送的生产变量设置不同的名称和路径)。
我试图在讲座期间尽可能多地运行“构建”和“开始”,以免被一些我无法追踪的意外行为所捕获。这工作得很好。
然后在某个时刻摆弄关于 excluding unused css from third party frameworks 的章节时,我不知何故破坏了我的开发服务器设置 。 ("run build"
仍然有效!)
问题
我的热服务器定义在 192.168.1.2:3000(这正是我想要的)。
当我使用下面显示的设置运行 webpack-dev-server
时,我在该位置得到一个 404(无法获取/)。
现在我已经阅读了 很多 关于如何正确设置 webpack 开发服务器,但我仍然没有做对......(很可能不是唯一在这里......)因为我仍然没有完全理解路径是如何工作的。
这是我的理解(通用开发服务器设置):
(如果我错了,请帮助我)
webpack.config.js
的输出路径只会在运行开发服务器时在内存中提供,因此在物理上不可见(例如,如果输出是 path: path.join(__dirname, 'devServerFolder'
,我将永远不会在我的项目结构中的任何地方看到该文件夹如果不是我创造的)index.html
的静态 bundle.js
将需要在我用 publicPath
和 contentBase
指向的文件夹中(这可能是我需要创建的 devServerFolder
里面有 index.html
;通常在网络上的大多数设置中,相同的 public
文件夹用于保存生产版本)html-webpack-plugin
,插件将自动为我生成该文件,无需指向任何内容,因为 bundle.js 已被插件写入其中 publicPath
和
contentBase
设置,但没有重新建立我的开发服务器(首先工作正常)。
run build
编译我的构建时没有任何问题,它工作正常,就像它应该的那样。
webpack.test
|
| - app // App folder
|
| - index.js // Entry point
| - greet.js // Hello World called by index.js
| - sass // Sass assets folder
| - pug // Pug (formerly jade) template and assets folder
| - node_modules
| - public // Production output folder
| - webpack-config-chunks // Split up webpack configs folder
| - .babelrc
| - package.json
| - webpack.config.js
// Irrelevant parts omitted
const paths: {
app: path.join(__dirname, 'app'), // The obvious one
dev: path.join(__dirname, 'bin'),
/* As mentioned above, from my understanding,
the output path for the dev server doesn't really matter at all
when using html-webpack-plugin, am I wrong here? */
build: path.join(__dirname, 'public') // Another obvious one
...
};
...
entry: {
app: production ? paths.app : [
'webpack-dev-server/client?192.168.1.2:3000',
'webpack/hot/only-dev-server',
paths.app
]
/* I can modify the entry to just be paths.app for every case
but it won't change a thing regarding my problem. */
},
output: {
path: production ? paths.build : paths.dev,
publicPath: production ? '' : paths.dev + '/',
/* ^ This is where I've tried just '' or paths.app or paths.build
instead of paths.dev and delete publicPath all together. */
filename: production ? '[name].[chunkhash].js' : '[name].js',
chunkFilename: '[chunkhash].js'
},
devServer: {
contentBase: paths.dev,
/* ^ This = "webpack.test/bin" – See above.
Tried several different paths here as well without luck. */
hot: true,
inline: true,
stats: 'minimal',
compress: true,
host: '192.168.1.2',
port: '3000',
},
plugins: [
new HtmlWebpackPlugin(),
new webpack.HotModuleReplacementPlugin(){
multiStep: true
}
]
...
最佳答案
如果您还没有,请尝试将您的命令放入 npm 脚本“start”中。请注意,它是少数不需要“运行”的命令之一,因此“npm start”运行该命令。
另外,如果你不介意全局安装 webpack,npm 可以使用 webpack 命令。
npm install webpack -g
"scripts": {
"build": "node-sass --output-style compressed src/css -o src/css",
"start": "webpack --watch & webpack-dev-server --content-base dist --inline & npm run build & open http://localhost:8080"
},
关于configuration - webpack-dev-server 404 & 如何正确设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39260162/
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
i=5 expr $i + 6 1>/dev/null 将标准输出重定向到/dev/null。怎么样 expr $i + 6 >/dev/null expr $i + 6 1>/dev/null 和
在 R 中,可以握住设备,绘制图片,然后刷新设备来渲染图形。这对于具有数千个数据点、颜色渐变等的非常复杂的绘图非常有用,因为如果不保持,设备将在每次绘图操作后刷新。效果非常好。 但是,一旦绘图就位,任
我想通过串口dev文件执行IPC管道。这是要求首先我尝试使用 sudo socat /dev/ttyS0,raw,echo=0,crnl /dev/ttyS1,raw,echo=0,crnl 报错如下
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 10 年前。 Improve thi
我正在尝试使用 mpg123 播放随机歌曲命令行。但不知道我的默认音频设备是什么。或者如果我需要使用“-a”选项指定任何其他音频设备。/dev/audio 和/dev/dsp 都是音频设备。如何知道哪
我可以看到/dev/uinput 和/dev/input 都存在于我的 Ubuntu 中并且它们很相似。它们可用于检测/模拟按键/鼠标/触摸事件。所以我对它们之间的区别感到困惑?谢谢! 新增:是的,我
cat/dev/urandom 总是一种在显示器上创建滚动字符的有趣方式,但会产生太多不可打印的字符。 有没有一种简单的方法可以在命令行上对其进行编码,使其所有输出都是可读字符,例如 base64 或
是否可以在没有 bit.dev 帐户的情况下将 bit 设置为本地服务器以进行内部处理? 我知道您可能没有相同的功能 -- bit's FAQ page说“与 Bit CLI 不同,bit.dev 服
我试图在 Ubuntu 的启动过程中尽早采样一些随机性。我想知道是否有人建议如何做到这一点。我目前的想法是寻找/dev/random 和/dev/urandom 在引导序列中创建的位置,并在那里添加我
我正在尝试使用'dotnet dev-certs'工具导出https证书以包含在Docker镜像中。现在我正在使用: dotnet dev-certs https -v -ep $(HOME)\.as
我发现非常方便的 dev.copy2pdf 命令可以将我正在查看的窗口复制到 pdf 文件中,如下所示: plot(rnorm(1000)) dev.copy2pdf(file="myfile.pdf
谁能告诉我为什么从硬盘驱动器上清除数据时出于安全性考虑首选/dev/random? 最佳答案 简单的答案,/dev/random不是首选。两者同样安全。使用/dev/zero可以更轻松地进行验证。还可
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a software
我有一个从 initramfs 镜像启动的嵌入式 Linux(vanilla、3.3.8、i486、Vortex86dx)系统。 我有一个 IDE 闪存盘,在/dev/hda1 和/dev/hda2
在Linux中,/dev/ttyS0和/dev/ttys0有什么区别? 我知道第一个是串行端口,但第二个是什么,带有小的 s? 最佳答案 see this For a pseudo terminal
我有一些命名空间的测试被自动加载到包 A 中使用 "autoload-dev": { "psr-4": { "Vendor\\PackageA\\PhpUnit\\": "te
我意识到/dev/stdout 和/dev/stderr 文件在没有根目录的 Android 设备上不存在。我同意这一点——但我需要一些方法来在我的 shell 脚本中重定向输入/输出——包括将输出重
我想对使用 composer 安装的软件包的最低支持版本运行测试,但理想情况下我想要最新版本的开发软件包。 具体来说,我想运行它来安装最低版本的软件包以进行测试: composer update --
我必须将开发分支从 testing 重命名为 tom 。重命名后,我必须创建一个具有相同名称的开发分支,它是 testing 并且它应该指向 master 的特定提交。 我已将分支重命名为: git
我是一名优秀的程序员,十分优秀!