vue.config.js 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. // vue.config.js 配置说明
  2. //官方vue.config.js 参考文档 https://cli.vuejs.org/zh/config/#css-loaderoptions
  3. const MiniCssExtractPlugin = require('mini-css-extract-plugin');
  4. module.exports = {
  5. // 测试
  6. // publicPath: process.env.env_config === 'prod' ? 'https://h5-cms-vue.ijolijoli.com/test_pad/dist' :
  7. // process.env.env_config === 'test' ? '/vapps/calory/' : '/dist/',
  8. // 正式
  9. // publicPath: process.env.env_config === 'prod' ? 'https://h5-cms-vue.ijolijoli.com/dist' :
  10. // process.env.env_config === 'test' ? '/vapps/calory/' : '/dist/',
  11. // 设置跨域
  12. crossorigin: 'anonymous',
  13. /**
  14. * 如果你不需要生产环境的 source map,可以将其设置为 false 以加速生产环境构建。
  15. * map文件的作用在于:项目打包后,代码都是经过压缩加密的,如果运行时报错,输出的错误信息无法准确得知是哪里的代码报错。
  16. * 有了map就可以像未加密的代码一样,准确的输出是哪一行哪一列有错。
  17. * */
  18. productionSourceMap: false,
  19. transpileDependencies: ['swiper', 'dom7'],
  20. // 它支持webPack-dev-server的所有选项
  21. devServer: {
  22. host: "0.0.0.0",//ip本地
  23. port: 8083, // 端口号
  24. https: false, // https:{type:Boolean}配置前缀
  25. open: false, //配置自动启动浏览器
  26. proxy: '' // 配置跨域处理
  27. },
  28. configureWebpack: {
  29. externals: {
  30. 'axios': "axios"
  31. }
  32. // 这是七牛找不到资源时的紧急处理方法,通过修改hash位数修改编译后的资源文件名
  33. // output: {
  34. // filename: `js/[name].[hash:6].js`,
  35. // chunkFilename: `js/[name].[hash:6].js`
  36. // },
  37. // plugins: [
  38. // new MiniCssExtractPlugin({
  39. // filename: `css/[name].[hash:6].css`,
  40. // chunkFilename: `css/[name].[hash:6].css`
  41. // })
  42. // ]
  43. },
  44. css: {
  45. loaderOptions: {
  46. postcss: {
  47. plugins: [
  48. require("postcss-px-to-viewport")({
  49. unitToConvert: "px", // 把什么单位转换成vw
  50. viewportWidth: 1000, // 视口宽度,设计稿宽度
  51. viewportHeight: 600, // 视口高度,设计稿高度
  52. unitPrecision: 5, // 转换成vw单位的小数点后的保留位数
  53. propList: ["*"], // 属性列表,表示你要把哪些css属性的px转换成vw
  54. viewportUnit: "vw", // 使用的单位,目前可选单位有vw,vh。
  55. fontViewportUnit: "vw", // 字体使用的单位
  56. selectorBlackList: ['van', 'el-'], // 匹配不被转换为vw的选择器
  57. minPixelValue: 1,
  58. mediaQuery: false,
  59. replace: true, // 是否直接更换属性值,而不添加备用属性
  60. exclude: /(\/|\\)(node_modules)(\/|\\)/,
  61. })
  62. ]
  63. }
  64. }
  65. }
  66. }