Разница в привязке свойств для пользовательского компонента в Ember V / s Angular - PullRequest
0 голосов
/ 06 апреля 2020

В Angular, если мы хотим связать свойство извне для пользовательского компонента, мы должны использовать «@Input», чтобы разрешить установку этого свойства извне (т. Е. От использования шаблона компонента)

Есть ли в Ember JS какой-то аналогичный механизм ИЛИ позволяет ли он выполнять привязку непосредственно из шаблона (hbs) без добавления / пометки чего-либо в компоненте JS? Есть ли какая-то разница, когда дело касается Ember Octane V / s более ранних версий Ember?

Ответы [ 2 ]

0 голосов
/ 12 апреля 2020

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

{{#each model as |post|}}
{{blog-post title=post.title body=post.body}}
{{/each}}

компонент поста блога, определите свойство с именем title, и это должно работать.

0 голосов
/ 07 апреля 2020

да, это позволяет связывать извне компонента, не добавляя ничего к компоненту js

в файле hbs компонента

<p>{{@attribute}}</p>

извне

<MyComponent @attribute="attributeValue"/>

также вы можете получить атрибут binded от компонента js

@tracked mycomponentAttribute = this.args.attribute;

в файле hbs компонента

<p>{{this.mycomponentAttribute}}</p>
...