Как добавить реквизит в компонент вне шаблона - PullRequest
0 голосов
/ 15 сентября 2018

Итак, давайте просто скажем, что у меня есть компонент HelloWorld, который я хотел бы импортировать несколько раз и назначить несколько реквизитов каждому (так как каждый экземпляр будет делать свое дело). Обычно вы делаете что-то вроде этого:

Для простоты я не использовал правильный синтаксис.

  import HelloWorld from "./components/HelloWorld";

  <HelloWorld v-if="which" title="0" key="1"/>
  <HelloWorld v-else title="1"/>

Однако мне было интересно, есть ли способ импортировать их с уже назначенными реквизитами, что-то вроде:

import HelloWorld from "./components/HelloWorld";
import HelloWorld1 from "./components/HelloWorld";

HelloWorld.props = { title: "1" } // this doesn't work
HelloWorld1.props = { title: "2" } // this doesn't work

Для использования <component>

* 1013 Е.Г. *

<component :is="which"/>

which = "HelloWorld" || "HelloWorld1"

1 Ответ

0 голосов
/ 15 сентября 2018

Реквизиты компонента могут быть установлены только в объекте определения компонента.

Похоже, вы пытаетесь передать разные значения проп, основанные на значении which.Вы можете сделать это, передав объект v-bind:

<HelloWorld v-bind="which ? { title: '0', key: '1' } : { title: '1' }"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...