vue-cli3.0相关的坑

vue-cli3.0相对比vue-cli2.0少了 vue-build.js vue-config.js

vue-cli2.0 运行命令 npm run dev
vue-cli3.0 运行命令 npm run serve

vue-cli3.0 要自己在项目根目录下配置 vue-config.js

module.exports = {
  // baseUrl  type:{string} default:'/' 
  // 将部署应用程序的基本URL
  // 将部署应用程序的基本URL。
  // 默认情况下,Vue CLI假设您的应用程序将部署在域的根目录下。
  // https://www.my-app.com/。如果应用程序部署在子路径上,则需要使用此选项指定子路径。例如,如果您的应用程序部署在https://www.foobar.com/my-app/,集baseUrl到'/my-app/'.

  baseUrl: './',


  // outputDir: 在npm run build时 生成文件的目录 type:string, default:'dist'

  outputDir: 'dist',

  // pages:{ type:Object,Default:undfind } 
/*
构建多页面模式的应用程序.每个“页面”都应该有一个相应的JavaScript条目文件。该值应该是一
个对象,其中键是条目的名称,而该值要么是指定其条目、模板和文件名的对象,要么是指定其条目
的字符串,
注意:请保证pages里配置的路径和文件名 在你的文档目录都存在 否则启动服务会报错的
*/
  // pages: {
      // index: {
          // entry for the page
          // entry: 'src/index/main.js',
          // the source template
          // template: 'public/index.html',
          // output as dist/index.html
          // filename: 'index.html'
      // },
      // when using the entry-only string format,
      // template is inferred to be `public/subpage.html`
      // and falls back to `public/index.html` if not found.
      // Output filename is inferred to be `subpage.html`.
      // subpage: 'src/subpage/main.js'
  // },

  //   lintOnSave:{ type:Boolean default:true } 问你是否使用eslint
  lintOnSave: true,
  // productionSourceMap:{ type:Bollean,default:true } 生产源映射
  // 如果您不需要生产时的源映射,那么将此设置为false可以加速生产构建
  productionSourceMap: false,
  // devServer:{type:Object} 3个属性host,port,https
  // 它支持webPack-dev-server的所有选项
 
  devServer: {

      port: 8085, // 端口号
      host: 'localhost',
      https: false, // https:{type:Boolean}
      open: true, //配置自动启动浏览器
      // proxy: 'http://localhost:4000' // 配置跨域处理,只有一个代理
      proxy: {
          '/api': {
              target: 'https://apiv2.pinduoduo.com',
              ws: true,
              changeOrigin: true
          },
          '/foo': {
              target: '<other_url>'
          }
      },  // 配置多个代理
  }
}

vue在用HBuilder打包后 app启动一片空白 3.0里面的baseUrl 改成 baseUrl: ‘./’

如果你安装了vue-cli3.0却要用cli2.0的话那么你需要全局安装一个桥接工具 npm install -g @vue/cli-init
另外使用HBuilder将项目打包的时候发现自己的接口里面的数据请求不到,其它静态资源正常显示。那是因为在开发阶段浏览器需要解决跨域问题使用了反向代理,如果打包app需要将代理注释,axios请求地址改为绝对路径

    原文作者:沈小白
    原文地址: https://segmentfault.com/a/1190000016964485
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞