Как изменить атрибут значения входного тега в vue.js onclick?

Итак, у меня есть компонент под названием TitleForm, который содержит ввод и кнопку, и я просто хочу, чтобы всякий раз, когда я нажимаю кнопку, значение attr устанавливалось пустым. Однако всякий раз, когда я пытаюсь это сделать, я получаю сообщение об ошибке Method "resetValue" has type "object" in the component definition. Did you reference the function correctly?

У TitleForm есть поддержка, поэтому входное значение может быть установлено на определенное значение, когда это необходимо.

<template lang = "html">
  <div class = "title-form">
    <input type = "text" id = "title" :value = "value" placeholder = "Enter title" autocomplete = "off">
    <div class = "buttons">
    <button @click = "resetValue" id = "delete-button"></button>
    </div>
  </div>
</template>

<script>
export default {
  name: 'TitleForm',
  props: {
    value: String
  },
  methods: {
    resetValue: {
      function() {
        document.getElementById('title').value = '';
      }
    }
  }
}
</script>

🤔 А знаете ли вы, что...
JavaScript можно использовать для создания анимаций и игр на веб-страницах.


1
3 636
2

Ответы:

Решено

Вы помещаете свою функцию внутрь объекта. То, как вы это объявили, ваше onclick-Event пытается вызвать resetValue как объект, который не работает.

methods: {
    resetValue: {
       function() {
          document.getElementById('title').value = '';
       }
    }
}

Вместо этого удалите фигурные скобки и объявите resetValue как функцию:

methods: {
    resetValue: function() {
        document.getElementById('title').value = '';
    }
}

пытаться

methods: {
    resetValue(){
        document.getElementById('title').value = '';
    }
}