加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Vuex实现计数器以及列表展示效果

发布时间:2020-12-17 02:31:13 所属栏目:百科 来源:网络整理
导读:本篇教程将以计数器及列表展示两个例子来讲解Vuex的简单用法。 本案例 从安装到启动初始页面的过程都直接跳过。注意安装时选择需要路由。 首先,src目录下新建store目录及相应文件,结构如下: index.js文件内容: Vue.use(Vuex); //务必在new Vuex.Store之

本篇教程将以计数器及列表展示两个例子来讲解Vuex的简单用法。

本案例

从安装到启动初始页面的过程都直接跳过。注意安装时选择需要路由。

首先,src目录下新建store目录及相应文件,结构如下:

index.js文件内容:

Vue.use(Vuex); //务必在new Vuex.Store之前use一下

export default new Vuex.Store({
state:{
count:0 //计数器的count
},mutations:{
increment(state){
state.count++
}
}
})

src下的main.js里注册store

components文件夹内新建Num.vue组件,内容如下

router文件夹内配置路由:

Vue.use(Router)

export default new Router({
routes: [
{
path:'/num',component:Num
},{
path:"*",redirect:"/num"
}
]
})

完成后启动,即可看到结果。计数器演示完成。

现在开始列表演示。

src目录下新建api文件夹,再新建api文件。

api/cover.js:

export default {
getCover(cb) {
setTimeout(() => cb(_cover),100);
/ $.get("/api/data",function (data) {
console.log(data);
})
/

},}

修改store/modules/cover.js:(定义数据模型)

const state = {
all:[]
};

const getters={
allCover:state=>state.all //getter用来提供访问接口
};

const actions = {
getAllCover({commit}){
cover.getCover(covers=>{
commit('setCover',covers) //触发setCover修改。
})
},removeCover({commit},cover){
commit('removeCover',cover)
}
};

const mutations = { //mutations用来修改state。
setCover(state,covers){
state.all = covers
},removeCover(state,cover){
console.log(cover.id);
state.all = state.all.filter(function (OCover) {
return OCover.id !== cover.id
})
}
};

export default {
state,getters,actions,mutations
}

store内的index.js中注册数据模型:

Vue.use(Vuex); //务必在new Vuex.Store之前use一下

export default new Vuex.Store({

modules:{
cover //注册cover数据模型
},state:{
count:0 //计数器的count
},mutations:{
increment(state){
state.count++
}
}
})

components文件夹内新建List.vue组件,内容如下:

  • {{covers}}

    请尝试点击li。

  • 路由中注册新组件:

    Vue.use(Router)

    export default new Router({
    routes: [
    {
    path:'/num',{
    path:'/list',component:List
    },redirect:"/num"
    }
    ]
    })

    完成后访问http://localhost:8080/#/list,即可看到结果。

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

    (编辑:李大同)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

      推荐文章
        热点阅读