您的位置:首页 > 房产 > 家装 > 加工平台接单_网购软件十大排名_上海关键词排名优化价格_百度 营销推广费用

加工平台接单_网购软件十大排名_上海关键词排名优化价格_百度 营销推广费用

2025/4/22 12:01:09 来源:https://blog.csdn.net/L_xxxxxxx/article/details/147295209  浏览:    关键词:加工平台接单_网购软件十大排名_上海关键词排名优化价格_百度 营销推广费用
加工平台接单_网购软件十大排名_上海关键词排名优化价格_百度 营销推广费用

创建store文件夹:store/index.js

// index.js
import Vue from 'vue'
import Vuex from 'vuex'
import address from './modules/address.js'Vue.use(Vuex)const store = new Vuex.Store({modules: {address}
})export default store

创建modules文件夹:modules/address.js

import api from "../../api/api";export default {namespaced: true, // 启用命名空间state: {addressInfo: {}},mutations: {// 用户收货地址SET_DELIVERY_DAARESS(state, detail) {console.log('SET_DELIVERY_DAARESS:', state, detail)state.addressInfo = detail}},actions: {// 获取收货地址详情async fetchGetDeliveryInfo({ commit }, id) {try {const { data: {data} } = await api.getDeliveryInfo(id)commit('SET_DELIVERY_DAARESS', data)return data} catch (err) {console.error(err)throw err}},// 添加收货地址async submitAddDeliveryInfo({ commit }, formData) {try {const { data: {data} } = await api.addDeliveryInfo(formData)return data} catch (err) {console.error(err)throw err}},// 添加收货地址async modifyUpdateDeliveryInfo({ commit }, formData) {try {const { data: {data} } = await api.updateDeliveryInfo(formData)return data} catch (err) {console.error(err)throw err}},},getters: {getDeliveryAddress: (state) => state.addressInfo}
}

main.js 全局挂载

import store from './store'const app = new Vue({store,...App
})

对应页面调用

import { mapState, mapActions } from 'vuex'computed: {// 从名为'address'的 Vuex 模块中映射 addressInfo 状态到组件的计算属性// 将返回的对象混入到 computed 对象中...mapState('address', ['addressInfo'])
},
methods: {// 从'address'模块映射三个 action 方法到组件方法中...mapActions('address', ['fetchGetDeliveryInfo','submitAddDeliveryInfo','modifyUpdateDeliveryInfo']),async showAddress() {try {await this.fetchGetDeliveryInfo({id: this.id})// 如果 addressInfo 有收货地址的数据就填入页面if(this.addressInfo) {this.form = this.addressInfo}} catch (err) {tool.alert(err)}},// 保存地址async saveAddress() {try {// 如果有 id 就更新收货地址,没有就调用新增地址 apiconst api_ = this.id == '' ? this.submitAddDeliveryInfo(this.form) :this.modifyUpdateDeliveryInfo(this.form)const res = await api_} catch (err) {tool.alert(err)}},
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com