一、环境变量添加没反应

添加环境变量VUE_FILE_BASE_URL之后,暂停服务重新运行,但是使用console.log(process.env)打印没有发现这个字段。本来以为是哪里还需要配置一下,结果。。。

只有以 VUE_APP_开头的变量会被 webpack.DefinePlugin 静态嵌入到客户端侧的包中????????????

二、Vue – watch用法

watch普通用法深度监听

data:{
     a:1,
     b:{
         c:1
     }
 },
 watch:{
     a(val, oldVal){//普通的watch监听
         console.log("a: "+val, oldVal);
     },
     b:{//深度监听,可监听到对象、数组的变化
         handler(val, oldVal){
             console.log("b.c: "+val.c, oldVal.c);
         },
         deep:true //true 深度监听
     }
 }

watch替代深度监听用法,用引号引起来就行

data:{
     a:1,
     b:{
         c:1
     }
 },
 watch:{
     a(val, oldVal){//普通的watch监听
         console.log("a: "+val, oldVal);
     },
     'b.c'(val, oldVal){//普通的watch监听
         console.log("c: "+val, oldVal);
     },
 }

三、监听浏览器刷新

如果需要在浏览器刷新前停止一些一直运行的插件服务之类的,就需要监听浏览器刷新,在刷新前销毁它们

  mounted(){
    window.addEventListener('beforeunload', this.beforeunloadHandler, false)
  },
  methods: {
  	// 浏览器刷新前会调佣的事件
    beforeunloadHandler(){
      console.log(555);
      localStorage.setItem("www","888")
    },
   }

四、VUE 重定向页面空白

场景:页面中TagsView上的刷新走的是重定向,连续刷新两次第二次就会显示空白页面
原因:所有页面都在keep-alive不刷新列表中,没有把重定向页面排除
解决方案:只保留除重定向页面redirect/index外的页面不刷新

五、VUE性能优化

请求接口时先访问必要接口,访问结束后再访问其他接口
原因是因为浏览器同一时间发送的请求数量是一定的,超过数量会延时等待

六、activated 和 deactivated

activated :keep-alive 组件激活时调用。也就是说当页面被缓存时后,再次切换到该界面时,会进入activated生命周期,执行相关操作
deactivated :keep-alive 组件停用时调用。也就是说当页面被缓存时后,切换到别的页面时,会进入deactivated 生命周期

七、template 有大用

1、template 常用于创建模板,是vue组件化的基础构成部分,这里也就不细说了
2、template的作用是模板占位符,可帮助我们包裹元素,但在渲染过程当中,template不会被渲染到页面上。因此template可以解决不少问题。

(1)比如想要同时循环两个相邻的标签时,如果不想新增一个标签去包裹他们,那就可以使用template。如下:

  <template v-for="(item,index) in userList">
  	<div :key="index">{{item.name}}</div>
  	<span :key="index">详情</span>
  </tempalte>

(2)还有就是解决一些疑难杂症,比如 v-ifv-for 不能同时使用的问题。如下:

  <template v-for="(item,index) in userList">
  	<div v-if="item.show" :key="index">{{item.name}}</div>
  </tempalte>

八、未能加载 Visual C++ 组件“VCBuild.exe”

1、安装对应Microsoft.NET Framework; 2、终端运行:npm install --global --production windows-build-tools
ps: 需要重启电脑

九、后续补充。。。