如何在返回"Error Cannot GET /"的 laravel 应用程序(带有 laradock)中解决 vuejs 热重载



我在laravel应用程序中使用webpack mix来热加载vuejs。然而,在运行npm run hot

后,我在每次加载页面时都会收到错误消息。Cannot GET /为首页/

webpack.mix.js

const  mix  = require('laravel-mix');
var webpackConfig = {
devServer: {
proxy: {
host: 'domain.local',  // host machine ip
port: 81,
},
watchOptions:{
aggregateTimeout:200,
poll:5000
},
}
}
mix.options({
hmrOptions: {
host: 'mmta.local',  // site's host name
port: 81,
}
});
mix.webpackConfig(webpackConfig);
mix.js('resources/vue_app/src/main.js', 'public/app/js')
.sass('resources/vue_app/src/styles/style.scss', 'public/app/css');

适用于:(dockerHost "172.20.129.2"and dockerPort: "8081");

mix.webpackConfig({
mode: "development",
resolve: {
alias: {
"@assets": path.resolve(__dirname, "resources/assets/site"),
"@sass": path.resolve(__dirname, "resources/assets/site/sass"),
"vue$": "vue/dist/vue.runtime.esm.js",
"@": path.resolve("./resources/assets"),
},
},
output: {
chunkFilename: "assets/site/js/chunks/[name].js",
},
devtool: "inline-source-map",
devServer: {
disableHostCheck: true,
headers: {
'Access-Control-Allow-Origin': '*'
},
contentBase: path.resolve(__dirname, 'public'),
host: config.dockerHost,
port: config.dockerPort,
watchOptions: {
poll: true
}
},
})
mix.options({
hmrOptions: {
host: config.dockerHost,
port: config.dockerPort
}
});

需要注意的是,在运行npm run hot之后,你必须等到npm显示ip

最新更新