ノックアウトの新しい 3.2 Component 仕様を使用して、オブジェクトのコレクションをレンダリングする foreach バインディングを内部に持つコンポーネントを作成しようとしています。foreach バインディング内のオブジェクトは、コンポーネントの VM の属性にアクセスする必要がありますが、foreach ループで一度その参照が失われるようです。
テンプレート内のコンポーネントのビュー モデルのルートに直接アクセスする簡単な方法はありますか?
コンポーネント VM:
function RelatedCompaniesViewModel(params) {
var self = this;
self.companies = params.companies;
self.displayLimit = ko.observable(3);
}
コンポーネント テンプレート:
<!-- ko foreach: companies() -->
<li data-bind="visible: $index() < displayLimit()">
...more bindings...
</li>
<!-- /ko -->
(returns a "displayLimit is not defined" error)