提示:以下是本篇文章正文内容 ,下面案例可供参考
一 、项目打包后 ,elementUi图标显示为方框问题
解决:
修改build文件=》utils.js中的ExtractTextPlugin,加入 publicPath: ‘…/…/’,
if (options.extract) {
return ExtractTextPlugin.extract({
use: loaders,
fallback: vue-style-loader,
publicPath: ../../, //elementui图标显示不全问题
})
} else {
return [vue-style-loader].concat(loaders)
}
二 、如何给项目添加ico图标
例如:
实现步骤:
1. 把icon图片放在项目的根目录下
2. build文件下的webpack.dev.conf.js 和 webpack.prod.conf.js 文件内搜索HtmlWebpackPlugin;并加入favicon: ./favicon.ico’代码
new HtmlWebpackPlugin({
filename: index.html,
template: index.html,
inject: true,
favicon: ./favicon.ico
}),
三、proxy本地跨域配置
本人项目使用的是vue2+webpack技术栈 ,所以跨域是基于此技术栈之上配置 。
// config文件=》index.js中proxyTable
proxyTable: {
/api: {
target: http://www.baidu.com:8080, // 此处为接口的真实地址
changeOrigin: true,
pathRewrite: {
^/api:
}
},
},
之前想区分开发和生产环境的接口 ,所以在target使用了process.env.ROOT_URL,结果发现本地代理失败了 ,后面才知道在此文件内获取不到process;即使这样设置也是多余的 ,因为在项目打包后本地代理是没有失效的
接口封装文件相关配置,或者也可以在config文件=》的dev.env.js文件内添加BASE_API: ‘/api’,这里的baseURL配置process.env.BASE_API
var instance = axios.create({
baseURL: /api, //接口统一域名
withCredentials: false,
timeout: 5000, //设置超时
headers: {
Content-Type: application/json;charset=UTF-8;,
}
})
四 、nginx配置
1. nginx=>conf=>nginx.conf文件配置
server {
listen 8088; //端口号默认80 ,若是端口冲突 ,可以更改端口号
server_name localhost; //
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
// 此处的 /api要和上面的接口封装处的baseURL一致 ,代理才有效果,之前被这个坑了好久
location /api {
rewrite ^/api/(.*) /$1 break;
proxy_pass http://www.baidu.com:8080; // 此处为接口的真实地址
}
2. 双击nginx文件夹下nginx.exe启动端服务
3. 浏览器输入 localhost:8088访问
以上为个人经验 ,希望能给大家一个参考 ,也希望大家多多支持本站 。
声明:本站所有文章,如无特殊说明或标注 ,均为本站原创发布。任何个人或组织 ,在未征得本站同意时,禁止复制 、盗用 、采集 、发布本站内容到任何网站 、书籍等各类媒体平台 。如若本站内容侵犯了原著者的合法权益 ,可联系我们进行处理 。