当前位置: 首页 > news >正文

南宁公司做网站微信小程序制作多少钱一个

南宁公司做网站,微信小程序制作多少钱一个,比较火的小程序购物平台,全国物流网站有哪些平台VUEX可以为项目添加一个数据仓库,当不同的组件需要获取或者设置数据时,都从这个仓库中获取。这里直接记录的是VUEX模块式开发的语法。目录结构:store文件保存VUEX的处理逻辑,这里设置了两个模块化仓库search和typenav,…

VUEX可以为项目添加一个数据仓库,当不同的组件需要获取或者设置数据时,都从这个仓库中获取。

这里直接记录的是VUEX模块式开发的语法。

目录结构:store文件保存VUEX的处理逻辑,这里设置了两个模块化仓库search和typenav,store下的index.js对外导出,并且内部会注册模块化仓库。

VUEX的注册

首先需要在js(本例中是store/index.js)中引入Vue和Vuex,并调用Vue.use(Vuex)

import Vue from 'vue'
import Vuex from 'vuex'Vue.use(Vuex);

该js应该对外暴露一个Vuex的实例,该实例通过Vuex.Store创建:

export default new Vuex.Store({...
})

在项目的入口js,一般是main.js中,引入这个index.js,并在Vue中注册:

...
import store from '@/store'
...new Vue({render: h => h(App),...store,...
}).$mount('#app')

注册后,在组件中,可以使用this.$store访问仓库。

然后介绍VUEX每个仓库中都需要具有的一些对象:

state

state对象保存仓库的数据。

const state={list : [],
};

mutations

mutations对象是唯一可以修改state数据的对象。

mutations对象中保存一些方法,每个方法的参数为(state, 其他参数)

const state={list : [],
};const mutations = {async getList(state){let tmpList = await reqcategoryList();state.list = tmpList.data;}
};

mutations对象中定义的方法,可以通过$store.commit(方法名)来触发。

    this.$store.commit('TypeNav/getList');

actions

actions可以用来触发commit。

actions接收接受一个与 store 实例具有相同方法和属性的 context 对象。

const state={list : [],
};const mutations = {async getList(state){let tmpList = await reqcategoryList();state.list = tmpList.data;},
};const action = {getListAction(context){context.commit('getList')},
}

actions方法通过this.$store.dispatch(方法名)来触发。

小仓库里的代码框架

TypeNav/index.js中的代码如下:

需要注意,因为项目中有多个小仓库,为了在commit时指定是哪个仓库中的mutations方法,在对外暴露的对象中,需要加一句namespaced:true。

import { reqcategoryList } from '@/api'
const state={list : [],
};const mutations = {async getList(state){let tmpList = await reqcategoryList();state.list = tmpList.data;}
};const action = {}export default{namespaced: true,state,mutations,action,
}

search/index.js代码框架是一模一样的:

const state={...
};const mutations = {...
};const action = {...
}export default{namespaced: true,state,mutations,action,
}

在store/index.js中通过import引入两个小仓库,再在Vuex.Store()中通过modules方法进行模块化:

import Vue from 'vue'
import Vuex from 'vuex'import search from './search'
import TypeNav from './TypeNav';Vue.use(Vuex);export default new Vuex.Store({modules:{search,TypeNav,},
})

组件中调用仓库

调用commit方法

commit方法使用this.$store.commit(仓库名/commit方法名)调用:

    this.$store.commit('TypeNav/getList');

读取state中的数据:

state中的数据使用this.$store.state.仓库名.数据名获取

    this.$store.state.TypeNav.list;

http://www.dtcms.com/a/595752.html

相关文章:

  • 网站开发公司福建新网域名网站
  • 襄阳市建设工程质量监督站网站企业营销案例
  • 湖北网站建设哪家专业汕头市网站建设分站公司
  • 网站主机租用wordpress中文伪静态
  • 江苏网站建设推广本地最好的网站开发建设公司
  • 网站建设需求意见征求表阿里云怎样做商城式网站
  • 厚街h5网站建设五八同城找工作招聘信息
  • 凡科建站官网登录入口网页版大气的广告公司名字
  • 二元期货交易网站开发做网站费用计入什么
  • 如何在建设银行网站预约纪念币成都网站建设 工作室
  • 平度那里有做网站的水冷眸WordPress
  • 网站开发e r图网站开发员的工资
  • 网站开发平台是什么php设计什么网站建设
  • 在网站做博客注册商标名字推荐
  • 网站换域名了怎么做301重定向做设计网站
  • 成品网站w在线观看网站建设基本费用
  • 比较好的做展会邀请函的网站wordpress 36氪主题
  • 专业网站优化排名太仓建设工程网站
  • 行政单位网站信息建设政策WordPress 蜘蛛池
  • 萧山区建设工程质量监督站网站WordPress 游戏
  • 谷歌网站开发客户网络公司要求做网站工商网监
  • 外贸设计网站建设律师做网络推广最好的网站有哪些
  • 花生壳内网穿透网站如何做seo优化荥阳市建设局网站
  • 招聘网站开发计划花都网站建设价格
  • 衡水哪家制作网站好阿里巴巴国际站网站建设
  • 做竞彩网站代理犯法么做婚纱网站策划方案
  • html5做的网站信游天下网站建设
  • 好的网站推荐一个查公司的口碑和评价的网站
  • 网站3d展示怎么做的网站模板安全管理系统
  • 平台网站开发公司微网站趋势