если у меня есть компонент, называемый my-scope
, который определяется только как:Доступ область применения компонента в пределах шаблона блока
export default Ember.Component.extend({
foo: 'bar'
})
, а затем я использовать компонент в шаблоне, например, так:
{{#my-scope}}
{{foo}}
{{/my-scope}}
Как могу ли я достичь объема окружающего компонента блока? Я пробовал:
{{foo}}
{{component.foo}}
{{view.foo}}
Может быть, это тот случай, когда мне нужно использовать вид? Надеюсь, что нет, но, возможно, так и случилось.
примечания: мой вариант использование является гораздо более сложным, но давайте просто скажем, что нормальное связывание подход к компонентам
{{#my-scope foo=outsideFoo}} ... {{/my-scope}}
не выполним пример
формат блока специально переместит вас из компонентов сферы и в родительской области, не существует какой-либо имеется ссылка из родительской области в компонент в связи с уровнем изоляции.Единственный способ сделать это состоял бы в том, чтобы компонент зарегистрировался сам с родителем (предоставив родителям возможность иметь ссылку на компонент), затем используйте ссылку родителя, чтобы затем показать foo каким-то магическим способом. – Kingpin2k
Спасибо @ Kingpin2k, я боялся магии, косвенности и хакерства. Я предполагаю, что если бы я использовал вид, то он * работал бы, верно? – ken
{{view.foo}} похоже, что он будет работать изнутри ... – Kingpin2k