Ember.js 观察/检测余烬成分{{yield}}块的变化

Ember.js 观察/检测余烬成分{{yield}}块的变化,ember.js,jquery-isotope,Ember.js,Jquery Isotope,组件是否有任何方法来监听或观察内容的变化 我有一个组件作为包装器,并且希望能够调用一些必要的清理同位素方法(例如.同位素('layout')),以防包装内容发生变化(例如通过过滤) 通过观察控制器属性,我可以对视图执行类似的操作,但如果可能的话,我希望减少耦合。嗯,我不知道您想要做什么,也没有使用过同位素.js。但我可以告诉你。{{yield}帮助程序调用此函数: _yield: function(context, options, morph, blockArguments) {

组件是否有任何方法来监听或观察内容的变化

我有一个组件作为包装器,并且希望能够调用一些必要的清理同位素方法(例如.同位素('layout')),以防包装内容发生变化(例如通过过滤)


通过观察控制器属性,我可以对视图执行类似的操作,但如果可能的话,我希望减少耦合。

嗯,我不知道您想要做什么,也没有使用过同位素.js。但我可以告诉你。
{{yield}
帮助程序调用此函数:

_yield: function(context, options, morph, blockArguments) {
        var view = options.data.view;
        var parentView = this._parentView;
        var template = get(this, 'template');

        if (template) {
            Ember.assert("A Component must have a parent view in order to yield.", parentView);

            view.appendChild(Ember.View, {
                isVirtual: true,
                tagName: '',
                template: template,
                _blockArguments: blockArguments,
                _contextView: parentView,
                _morph: morph,
                context: get(parentView, 'context'),
                controller: get(parentView, 'controller')
                //expose parent to children components?
            });
        }
}
这意味着理论上,您可以向子组件公开句柄,以设置父组件的属性。这显然将这两个部分结合起来。您还可以使子级和父级都将“包装内容”作为属性,以便您可以在这两个位置进行观察和操作。我用这两种方法都取得了巨大的成功。我所用的是由上下文决定的