@Pronchik1
)

Как правильно сделать так чтобы при нажатии на Cancle значаение не сохранялось, а на save сохранялось?

Как правильно сделать так чтобы при нажатии на Cancle значаение введенной в textarea не сохранялось, а на save сохранялось?
<template lang="pug">
.modal-task(:style="{display: showDetailsModal}")
    .modal-task-details
        .task
            .name(v-show="show")
                |Name: {{updatedTask.name}}
            .text(v-show="!show")
                textarea(v-model='updatedTask.name')
            .status
                |Status: {{updatedTask.status}}
            .deadline
                |Deadline: {{updatedTask.time}}
            .description(v-show="show")
              |description: {{updatedTask.description1}}
            .text(v-show="!show" @change="handleChange")
                textarea(v-model='updatedTask.description1')
        button(class='add-task' v-on:click="show=!show" v-show="show") Edit
        button(class='add-task' v-on:click="show=!show" v-show="!show" @click="closeForm()") Close
        button(class='add-task' v-show="showSaveButton" @click="saveTask(task)") Save
</template>

<script lang="ts">
import { defineComponent } from 'vue'
import { emitter } from '../main'

export default defineComponent({
  name: 'task-details-modal',
  props: ['showDetailsModal', 'task'],
  data () {
    return {
      show: true,
      showSaveButton: true,
      updatedTask: {
        name: '',
        description1: '',
        time: '',
        status: ''
      }
    }
  },
  methods: {
    closeForm () {
      emitter.emit('close', this.task)
      // console.log(this.updatedTask)
    },
    saveTask () {
      emitter.emit('save', this.updatedTask)
    },
    handleChange () {
      this.showSaveButton = true
    }
  },
  created () {
    this.updatedTask = JSON.parse(JSON.stringify(this.task))
  }
})
</script>

и как можно обратится именно к этой таске в родительском компоненте?
mounted () {
    emitter.on('close', task => {
      this.tasks[*indexOfClosedTask*] = task as TaskInterface
      this.showDetailsModal = 'none'
    })
    emitter.on('save', task => {
      this.tasks[*indexOfSavedTask*] = task as TaskInterface
      this.showDetailsModal = 'none'
    })
  }
  • Вопрос задан
  • 74 просмотра
Пригласить эксперта
Ваш ответ на вопрос

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

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