问题是这样的:公司一个项目要变更icon,于是从服务器链接获取替换成了项目目录下一个static目录的icon

link.href = '/static/images/favicon.ico';

测试环境和预生产环境都是ok的正常加载,然后生产环境icon加载不出来,经排查发现是生产环境的nginx把static目录指向另一台服务器了,生产环境nginx不能随便修改因为怕影响别人的项目,于是有以下操作:

指向项目根目录的文件:

link.href = '/favicon.ico';

通过copy-webpack-plugin将打包的static文件移动到项目根目录:

在webpack.config.base.js文件中声明和使用copyplugin,方法是from...to...

const CopyPlugin = require('copy-webpack-plugin');

const path = require('path');

.

.

.

plugins: [

new CopyPlugin([

{ from: path.resolve(__dirname, '../static/images/favicon.ico'), to:

path.resolve(__dirname, '../hytMain') },

]),

new VueLoaderPlugin(),

new webpack.DefinePlugin({

'process.env': {

NODE_ENV: JSON.stringify(process.env.NODE_ENV),

PUBLIC_PATH: JSON.stringify(config.publicPath)

}

})

]

icon加载出来了,经此一事,总结原来即便是换个icon这样的事情也没有表面的那么简单,路漫漫其修远兮。

好文阅读

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: