@Carrot134

Как изменять value в input при клике?

Store:

export default {
    actions:{
        addNumber(ctx){
            const number=[32,35]
            ctx.commit('allNumber',number)
        }
    },
    mutations:{
        allNumber(state,number){
            state.numbers = number
        }
    },
    state:{
        numbers:[],
        change:[]

    },
    getters:{
        number(state){
            return state.numbers
        },
     
    }
}

App:

<div>
    <input type="text" class="first" value="num" >
    <input type="text" class="second">=
    <input type="text" class="third"><br>
      <div  v-for="num in number">
        <button>{{num}}</button>
     </div>
</div>

import {mapGetters,mapActions} from 'vuex'

export default {
  name: 'App',
  computed:mapGetters(['number']),

  methods: {
    ...mapActions(["addNumber"]),
  },
  async mounted() {
    this.addNumber()
  },
}

Как сделать, что бы при нажатии кнопки со значением 32, в поле input его значение "value" тоже менялось на 32, а после при клике на кнопку "35" значение стало "3235" (по типу калькулятора)?
Дополнение: Что бы например в массив change при клике по кнопке через action заносились все значения и уже от туда прокидывались в поле value у input
  • Вопрос задан
  • 512 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
mutations: {
  add: ({ change }, val) => change.push(val),
},


<input :value="$store.state.change.join('')">
<div v-for="n in $store.state.numbers">
  <button @click="$store.commit('add', n)">{{ n }}</button>
</div>

Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы