1、vue项目,其中在用户中心设置中调用本地接口这一块有很多相同之处,2、例如:在配置发送消息快捷键上,我们的接口有添加本地配置和更新本地配置,当我要设置发送消息快捷键时,我需要判断一下如果本地有这个配置那么使用更新本地配置接口,在成功回调中也要做不同的操作。还有配置好友上线声音提醒等许多也是这样的操作,目前我是各自写个各自的,但是我觉得这样写有点重复搬砖的意思,我该怎优化我的代码。3、setSendMsgKey(action, val, keyName){ console.log(action, 'action'); // action要调的接口名 let tempVal = val; if(val == '0') tempVal = 'CTRL_ENTER'; if(val == '1') tempVal = 'ENTER'; let setSendMsgKeyCB = resp => { console.log(resp, '配置用户发送消息快捷键'); if(resp.code == 0){ this.$store.commit('SET_USER_LOCALCONFIG', { key: 'send_msg_key', value: tempVal }); if(action == 'addLocalSetting') this.$store.commit('SET_USER_LOCALCONFIG', { key: keyName, value: true }); } } if(action == 'addLocalSetting'){ this.$Service.user.addLocalSetting( [{ key: 'send_msg_key', value: tempVal }], setSendMsgKeyCB ) } else { this.$Service.user.updateLocalSetting( [{ key: 'send_msg_key', value: tempVal }], setSendMsgKeyCB ) } },
3 回答

HUH函数
TA贡献1836条经验 获得超4个赞
建议新建 util.js存放自定义公共方法, 需要的时候import调用
或者将方法定义在一个对象内
const utils = {
setSendMsgKey(action, val, keyName) {}
}
Vue.prototype.utils = utils
调用
this.utils.setSendMsgKey(action, val, keyName)

慕运维8079593
TA贡献1876条经验 获得超5个赞
把回调也作为参数传入
Vue.prototype.$setSendMsgKey= function(action, val, keyName,setSendMsgKeyCB){
...
}
以后用的时候用
this.$setSendMsgKey(.. , resp => {
...
})
是这个意思吗
添加回答
举报
0/150
提交
取消