nuxtjs 各个生命周期HOOK多次调用BUG

BUG 版本: ~2.15.3
初次使用发现如果定义多个 layout 的情况, 每个钩子都会被调用两次
如果是 server 端的钩子的话会被调用三次

  • client 端两次
  • server 端一次

vuex状态更新无法被检测到

项目中遇到这样一种情况, AJAX获取到的数据作为缓存,同样的参数请求不再发生实质的AJAX请求
但页面上的表现形式仍然要和真的发生请求一样

vuex reset state

一般写法

1
2
3
4
5
6
const state = {
a: 1,
b: { c: 1}
};

export default { state };

vue config files config

阅读前如果对vue env设置不理解的请先查看 vue env file
alias设置不理解的请查看vue resolve alias config

vue env file

create file

1
2
# touch env.[custom]
touch env.test

env.test
custom var must start with VUE_APP_

1
2
3
NODE_ENV=development
BASE_URL=/
VUE_APP_MODE=test

vue create loading component with vuex

tree

loading

1
2
3
▾ components/
▾ common/
loading.vue # loading component file
1
2
3
▾ store/
▸ data/
app.ts # state module file

vue resolve alias config

vuejs默认@ 指向 ./src

Vuejs get Environment Variables

set model File

1
touch .env.test

key=value

MODE=test


use test environment

1
vue-cli-service build --mode development

get the values

1
console.log(process.env.MODE)

vue typescript书写规则

等待更新

vue常见错误

■ 渲染state中定义image

template

1
<img class="user-avatar rounded-circle mr-2" :src="avatar" alt="User Avatar" />

script

1
const defaultAvatar = require('@/assets/images/avatars/0.jpg');

import的方式可能会有错误提示,require的方式相当于import * as defaultAvatar

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×