zoukankan      html  css  js  c++  java
  • 10分钟精通vue+vuex开发

    vuex属于vue生态中的一个技术点,当随着vue编程开发后,一定会遇到vuex,至于vuex是什么,为什么需要vuex,这应该是理解层面的知识。至于怎么在代码用到vuex,怎么coding,可以先从下面这个教程开始,先混个眼熟开始,达到快速技术点扫盲的目的。

    <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <meta http-equiv="X-UA-Compatible" content="ie=edge" />
        <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
        <script src="https://unpkg.com/vuex"></script>
        <title>10分钟精通vue+vuex开发(哎呦喂web  前端三日老师)</title>
    </head>
    
    <body>
        <div id="app">
            <h1>{{info}}</h1>
            <h1>{{count}}</h1>
            <button @click="pressMe">点击我一次</button>
        </div>
        <script>
            //可以把vuex的Store看作是所有数据的集合,具体怎么用? 
            //答:const一个Store 
            //来创建一个 store,提供一个初始 state 对象和一些 mutation
            //1.通过 store.commit 方法触发状态变更 store.commit('increment')
            //2.通过 store.state 来获取状态对象 console.log(store.state.count)
            //其它: 如果在模块化构建系统中,请确保在开头调用了 Vue.use(Vuex),这里const store必须定义在new Vue之前
            const store = new Vuex.Store({   //Store是一个类,所以S大写
                state: {
                    count: 0  //思考,vue编程,怎样访问这个count变量,这里通过vue的原生计算属性computer
                },
                
                getters:{  //介绍了原生的getters属性, 它起到过滤器的作用
                    counter(state){  //读作:定义一个函数,它接受一个参数,这里就是vuex中的state属性
                        //return state.count +1
                        return state.count
                    }
                },
                //编程需要:希望在页面上点击事件可以操作vuex中的数据,于是引入的mutations,mutations是同步方法, 相对于 actions属性
                mutations: {
                    plusCount(state,num) {  //这里所有的函数默认都会接收这里state,并且这里接收另一个参数 num
                        state.count += num
                        //state.count++
                    }
                },
                actions:{
    
    
                }
    
                
            })
    
            new Vue({
                el: '#app',
                data() {
                    return {
                        info: "Hello World !" //用于测试vue环境
                    }
                },
                computed:{  
                    count() {
                        //return store.state.count
                        return store.getters.counter //重构代码,演示和getters属性互动
                    }
                },
                methods: {
                    pressMe() {
                        //alter("哈哈,你点击我我");
                        //去调用stote里面 mutations
                        store.commit('plusCount',10)
                        //store.dispath('xxx',10)  //于是使用dispath方法去调用触发“异步”方法
                    }
                },
            })
            
        </script>
    </body>
  • 相关阅读:
    docker一些基本操作
    Error requesting socket: exit status 255(一个很不错的解决办法)【转】
    十五周至十八周的任务进度
    7月24号day16总结
    7月23号day15总结
    7月22号day14总结
    7月21号day13总结
    7月20号day12总结
    7月19日day11总结
    7月18号day10总结
  • 原文地址:https://www.cnblogs.com/zhuji/p/12528013.html
Copyright © 2011-2022 走看看