vue2 打包好,用phpstudy 访问 报错 Uncaught SyntaxError: Unexpected token '*' (at app.js:2:2)?
页面详情
phpstudy用 nginx服务器
server {
listen 80;
server_name mydev.zunniu.com;
root "D:/Sherry/Work/ProjectCode/zun.niu.wang.tutew.com-admin/dist";
location / {
index index.php index.html error/index.html;
error_page 400 /error/400.html;
error_page 403 /error/403.html;
error_page 404 /error/404.html;
error_page 500 /error/500.html;
error_page 501 /error/501.html;
error_page 502 /error/502.html;
error_page 503 /error/503.html;
error_page 504 /error/504.html;
error_page 505 /error/505.html;
error_page 506 /error/506.html;
error_page 507 /error/507.html;
error_page 509 /error/509.html;
error_page 510 /error/510.html;
include D:/Sherry/Work/ProjectCode/zun.niu.wang.tutew.com-admin/dist/nginx.htaccess;
autoindex off;
}
location ~ \.php(.*)$ {
fastcgi_pass 127.0.0.1:9001;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
include fastcgi_params;
}
}
vue.config.js
const path = require('path');
const Setting = require('./src/setting.env');
// 引入打包分析文件
const { BundleAnalyzerPlugin } = require('webpack-bundle-analyzer');
// 引入js打包工具
const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
const MonacoWebpackPlugin = require('monaco-editor-webpack-plugin');
const resolve = (dir) => {
return path.join(__dirname, dir);
};
// iview-admin线上演示打包路径: https://file.iviewui.com/admin-dist/
const BASE_URL = process.env.NODE_ENV === 'production' ? '/' : '/';
const env = process.env.NODE_ENV;
module.exports = {
outputDir: Setting.outputDir,
runtimeCompiler: true,
productionSourceMap: false, //关闭生产环境下的SourceMap映射文件
baseUrl: BASE_URL,
lintOnSave: false,
configureWebpack: (config) => {
const pluginsPro = [new BundleAnalyzerPlugin()];
pluginsPro.push(
// js文件压缩
new UglifyJsPlugin({
uglifyOptions: {
compress: {
drop_debugger: true,
drop_console: true, //生产环境自动删除console
pure_funcs: ['console.log'], //移除console
},
},
sourceMap: false,
parallel: true, //使用多进程并行运行来提高构建速度。默认并发运行数:os.cpus().length - 1。
}),
);
if (process.env.NODE_ENV === 'production') {
config.plugins = [...config.plugins, ...pluginsPro];
}
if (process.env.NODE_ENV === 'production') {
// 开启分离js
// config.optimization = {
// runtimeChunk: 'single',
// splitChunks: {
// chunks: 'all',
// maxInitialRequests: Infinity,
// minSize: 20000,
// cacheGroups: {
// vendor: {
// test: /[\\/]node_modules[\\/]/,
// name(module) {
// // get the name. E.g. node_modules/packageName/not/this/part.js
// // or node_modules/packageName
// const packageName = module.context.match(/[\\/]node_modules[\\/](.*?)([\\/]|$)/)[1];
// // npm package names are URL-safe, but some servers don't like @ symbols
// return `npm.${packageName.replace('@', '')}`;
// },
// },
// },
// },
// };
}
},
chainWebpack: (config) => {
config.resolve.alias
.set('@', resolve('src')) // key,value自行定义,比如.set('@@', resolve('src/components'))
.set('_c', resolve('src/components'));
// 使用 iView Loader
config.module
.rule('vue')
.test(/\.vue$/)
.use('iview-loader')
.loader('iview-loader')
.tap(() => {
return Setting.iviewLoaderOptions;
})
.end();
// 重新设置 alias
config.resolve.alias.set('@api', resolve('src/api'));
// node
config.node.set('__dirname', true).set('__filename', true);
// 判断是否需要加入模拟数据
const entry = config.entry('app');
if (Setting.isMock) {
entry.add('@/mock').end();
}
config.plugin('monaco').use(new MonacoWebpackPlugin());
},
// 设为false打包时不生成.map文件
productionSourceMap: false,
// 这里写你调用接口的基础路径,来解决跨域,如果设置了代理,那你本地开发环境的axios的baseUrl要写为 '' ,即空字符串
devServer: {
port: 1617, // 端口
},
publicPath: '/admin',
assetsDir: 'system_static',
indexPath: process.env.NODE_ENV === 'development' ? 'index.html' : 'system.html',
// indexPath: 'index.html',
};
Nginx
没有配置好吧,为啥app.js
里面的内容是html
页面……