仿elem学习之记录当前经纬度

// 记录当前经度纬度
	[RECORD_ADDRESS](state, {
		latitude,
		longitude
	}) {
		state.latitude = latitude;
		state.longitude = longitude;
	},

传统的函数参数传递方法中,需要一一对应参数否则,会报错,如下:

function personInfo(name, age, address, gender) {
  console.log(name, age, address, gender)
}
personInfo('william', 18, 'changsha', 'man')

使用解构赋值的方法则灵活得多。参考ES6解构赋值
这里使用{latitude,longitude}作为参数,在函数调用时,传参则方便很多。

当mutation事件类型比较多的时候, 我们可以使用常量替代 mutation 事件类型。同时把这些常量放在单独的文件中可以让我们的代码合作者对整个 app 包含的 mutation 一目了然:

//mutation-types.js
export const RECORD_ADDRESS = 'RECORD_ADDRESS'
//store.js
import {RECORD_ADDRESS} from ',/mutation-types'
....
//mutation.js
export default{
//ES2015风格的计算属性命名功能来使用一个常量作为函数名
[RECORD_ADDRESS](state, {
		latitude,
		longitude
	}) {
		state.latitude = latitude;
		state.longitude = longitude;
	},
}

在组件中使用

import {mapMutations} from 'vuex'
...
methods:{
//将this.RECORD_ADDRESS()映射为this.$store.commit('RECORD_ADDRESS')
	...mapMutations(['RECORD_ADDRESS'])
}

组件中直接调用 this.RECORD_ADDRESS()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值