zoukankan      html  css  js  c++  java
  • vuex使用

    1.安装cnpm install  vuex --save 

    2.src/新建立一个文件夹叫store,里面新建一个js,叫做strore.js

    3.在store.js

    import Vue from 'vue'
    import Vuex from 'vuex'
    Vue.use(Vuex)
    /*外部想要引入这个export*/
    export const store =new Vuex.Store({
    state:{
    product:[
    {name:"虎刺蛾2",price:200},
    {name:"虎刺蛾3",price:100},
    {name:"虎刺蛾4",price:80},
    {name:"虎刺蛾5",price:50}
    ]
    }

    4.mian.js 

     import {store}  from './store/store'

    new Vue(){

     store:store

    }

    5.使用数据显示出来

    <template>
    <div class="hello">
    <ul>
    <li v-for="pro in product">
    {{pro.name}}<br>
    {{pro.price}}
    </li>
    </ul>
    </div>
    </template>

    <script>
    export default {
    computed:{
    product(){
    return this.$store.state.product
    console.log(this.$store.state.product)
    }
    }
    }
    </script>

    想要改变数据

    <template>
    <div class="hello">
    <ul>
    <li v-for="pro in changdataa">
    {{pro.name}}<br>
    {{pro.price}}
    </li>
    </ul>
    </div>
    </template>

    <script>
    export default {
    computed:{
    product(){
    return this.$store.state.product
    //console.log(this.$store.state.product)
    },
    //改变数据
    changdataa(){
    var changdataa=this.$store.state.product.map(
    product =>{
    return{
    name:"**"+product.name+"*",
    price:product.price/2
    };
    });
    return changdataa;
    }
    }
    }
    </script>

    多个组件得复制简写改变数据

    import Vue from 'vue'
    import Vuex from 'vuex'
    Vue.use(Vuex)
    /*外部想要引入这个export*/
    export const store =new Vuex.Store({
    state:{
    product:[
    {name:"虎刺蛾2",price:200},
    {name:"虎刺蛾3",price:100},
    {name:"虎刺蛾4",price:80},
    {name:"虎刺蛾5",price:50}
    ]
    },
    getters:{
    changdataa:(state)=>{
    var changdataa=state.product.map(
    product =>{
    return{
    name:"**"+product.name+"*",
    price:product.price/2
    };
    });
    return changdataa;

    }

    },
    mutations:{
    reduceprice:(state)=>{
    state.product.forEach(pro=>{
    pro.price-=1;

    })

    }
    },
    actions:{
    reduceprice:(context,playload)=>{
    setTimeout(function(){
    context.commit("reduceprice",playload)
    },2000)
    this.$store.dispatch("reduceprice",amount)
    }
    }


    })

    computed:{
    product(){
    return this.$store.state.product
    },
    //改变数据
    changdataa(){
    return this.$store.getters.changdataa;
    }
    }

    //点击时间

    methods:{
    reduceprice(){
    this.$store.commit('reduceprice')
    }

    }
    }

  • 相关阅读:
    从jdbc到分层的飞跃
    第二章 变量和数据类型
    s1300新学期伊始的我们
    选择结构总结
    第四章 选择结构(二) Switch结构
    第三章 选择结构(一)
    第二章 变量、数据类型和运算符
    使用Java理解程序逻辑 第1章 初识Java 基本部分
    ES命令基础
    Spring MVC拦截器
  • 原文地址:https://www.cnblogs.com/xzhce/p/12829856.html
Copyright © 2011-2022 走看看