【发布时间】:2015-10-06 12:26:03
【问题描述】:
我使用的是 Ember 1.13.3(截至 2015 年 7 月 16 日的最新版本)。
我有一个这样定义的组件:
import Ember from 'ember';
export default Ember.Component.extend({
tagName: 'li',
yow: 'argh',
});
对应的hbs很简单(默认):
{{yield}}
我以这种方式使用组件(在我的 application.hbs 中):
{{#side-menuitem name='medium' current=selectedMenuItem clicked='menuItemSelected'}}
{{#link-to name}}Hey you ... {{yow}}{{/link-to}}
{{/side-menuitem}}
我希望看到带有标签的链接:嘿,你...啊。 但我明白了:嘿,你……(没有啊)。
这里有一个类似的帖子:Accessing component scope within template block
我也尝试过:{{view.yow}} 和 {{component.yow}},没有运气。 看起来 Ember 1.13(仍然)有这种行为:块格式专门将您从组件范围中删除并进入父范围,由于隔离级别,没有任何可用的从父范围到组件的链接。
这是不可取的...,不知何故,我认为这种行为在 1.13 中已经改变(与 2.0 兼容),但我没有看到它(或者我想错了?)。
如何在不弄乱(父)控制器的情况下解决这个问题?
谢谢, 拉卡
【问题讨论】:
标签: templates ember.js components