refine code

This commit is contained in:
Pan
2019-03-19 18:46:30 +08:00
parent fd4b5c4052
commit d927d4172f
9 changed files with 81 additions and 55 deletions

View File

@@ -77,10 +77,10 @@ export default {
toggleSideBar() {
this.$store.dispatch('toggleSideBar')
},
logout() {
this.$store.dispatch('Logout').then(() => {
location.reload()// In order to re-instantiate the vue-router object to avoid bugs
})
async logout() {
await this.$store.dispatch('Logout')
// In order to re-instantiate the vue-router object to avoid bugs
location.reload()
}
}
}

View File

@@ -36,7 +36,7 @@ const user = {
login({ username: username.trim(), password: password }).then(response => {
const { data } = response
commit('SET_TOKEN', data.token)
setToken(response.data.token)
setToken(data.token)
resolve()
}).catch(error => {
reject(error)
@@ -54,17 +54,17 @@ const user = {
reject('Verification failed, please Login again.')
}
const { roles } = data
const { roles, name, avatar, introduction } = data
// roles must be a non-empty array
if (!roles || roles.length <= 0) {
reject('getInfo: roles must be a non-null array!')
}
commit('SET_ROLES', data.roles)
commit('SET_NAME', data.name)
commit('SET_AVATAR', data.avatar)
commit('SET_INTRODUCTION', data.introduction)
commit('SET_ROLES', roles)
commit('SET_NAME', name)
commit('SET_AVATAR', avatar)
commit('SET_INTRODUCTION', introduction)
resolve(data)
}).catch(error => {
reject(error)

View File

@@ -29,7 +29,11 @@ service.interceptors.request.use(
// response interceptor
service.interceptors.response.use(
response => response,
/**
* If you want to get information such as headers or status
* Please return response => response
*/
response => response.data,
/**
* 下面的注释为通过在response里自定义code来标示请求状态
* 当code返回如下情况则说明权限有问题登出并返回到登录页

View File

@@ -96,17 +96,16 @@ export default {
this.getList()
},
methods: {
getList() {
async getList() {
this.listLoading = true
fetchList(this.listQuery).then(response => {
this.list = response.data.items
this.total = response.data.total
this.listLoading = false
this.oldList = this.list.map(v => v.id)
this.newList = this.oldList.slice()
this.$nextTick(() => {
this.setSort()
})
const { data } = await fetchList(this.listQuery)
this.list = data.items
this.total = data.total
this.listLoading = false
this.oldList = this.list.map(v => v.id)
this.newList = this.oldList.slice()
this.$nextTick(() => {
this.setSort()
})
},
setSort() {

View File

@@ -88,17 +88,16 @@ export default {
this.getList()
},
methods: {
getList() {
async getList() {
this.listLoading = true
fetchList(this.listQuery).then(response => {
const items = response.data.items
this.list = items.map(v => {
this.$set(v, 'edit', false) // https://vuejs.org/v2/guide/reactivity.html
v.originalTitle = v.title // will be used when user click the cancel botton
return v
})
this.listLoading = false
const { data } = await fetchList(this.listQuery)
const items = data.items
this.list = items.map(v => {
this.$set(v, 'edit', false) // https://vuejs.org/v2/guide/reactivity.html
v.originalTitle = v.title // will be used when user click the cancel botton
return v
})
this.listLoading = false
},
cancelEdit(row) {
row.title = row.originalTitle

View File

@@ -53,12 +53,11 @@ export default {
this.fetchData()
},
methods: {
fetchData() {
async fetchData() {
this.listLoading = true
fetchList().then(response => {
this.list = response.data.items
this.listLoading = false
})
const { data } = await fetchList()
this.list = data.items
this.listLoading = false
},
handleDownload() {
this.downloadLoading = true