Какова цель значения по умолчанию в реквизитах в vue, если vue по-прежнему вызывает ошибку? - PullRequest
2 голосов
/ 06 августа 2020

Я пытаюсь понять, предназначена ли проверка пропуска для разработчика или пользователя. Я намеренно оставил компонент пустым

Я не передал значение (кстати, как называется это переданное значение?): <card />
Правильный способ: <card :name="name" />

props:{
    name: { default: "John Doe" }

Однако, когда я оставляю компонент пустым, без передачи значения, Vue использует значение по умолчанию для заполнения значения в разделе шаблона, оставляя ошибку в консоли: Property or method "name" is not defined on the instance but referenced during render.

Что, если я хочу использовать значение по умолчанию? Я буду продолжать получать эту ошибку.

1 Ответ

1 голос
/ 06 августа 2020

Проверка свойств полезна как для разработчиков, так и для пользователей, но необязательна.

Я думаю, что проблема заключается в этой строке (я реорганизовал ввод на myName, чтобы объяснить): <card :name="myName" />

Ошибка возникает из-за того, что myName не определен должным образом перед передачей в компонент.

Они будут работать как stati c примеры:

  • <card name="Jesse" /> Поскольку имя не связано с : или v-bind:
  • <card :name="'Jesse'" /> Потому что имя привязано здесь, но к буквальной строке 'Джесси'

<card :name="myName" /> будет работать, вам просто нужно подтвердить, что myName не является неопределенным.

myName само по себе может быть опорой в родительском компоненте, если хотите, например: props: { myName: { default: "Jesse"} }

...