由于生产结构和开发结构的不同,我在vue 2项目(webpack-simple模板)中表达静态数据时遇到问题。
开发:localhost / app
生产:服务器/某些目录/应用
一些目录经常更改,因此可以在配置文件中动态设置。
我的server.js服务部分:
if (config.root !== '/') {
app.use(`/${config.root}`, express.static(path.join(__dirname)));
}
app.use('/dist', express.static(path.join(__dirname, 'dist')));
Run Code Online (Sandbox Code Playgroud)
转译的JS文件位于/ dist文件夹中。
这是用作应用程序入口点的index.html文件:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>App Demo</title>
</head>
<body>
<div id="app"></div>
<script src="/dist/build.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
它在开发中有效,因为应用程序是根目录。
但是在生产版本中,它不起作用,因为应用程序是从服务器子文件夹提供的。
任何想法如何解决这个问题?
谢谢。