17

让我们让人类与猫与小猫

class Master
{  
   String masterName;

   Cat[] cats;  
}
class Cat 
{
   String catName;

   Kitten[] kittens;
}

class Kitten 
{
   String kittenName;
}  

现在我想在 html 中展示我所有的小猫和猫的主人。我用

                    <!-- ko foreach: humans -->
                    <!-- ko foreach: cats -->
                    <!-- ko foreach: kittens -->
<p data-bind="$data.kittenName"></p>
<p data-bind="$parent.catName"></p>
<p data-bind="???????"></p>   <!-- How get master's name? -->
                    <!-- /ko -->
                    <!-- /ko -->
                    <!-- /ko -->
4

2 回答 2

26

淘汰赛文档

$parents 这是一个代表所有父视图模型的数组:

$parents[0] 是来自父上下文的视图模型(即,它与 $parent 相同)

$parents[1] 是来自祖父母上下文的视图模型

您应该可以$parents[1]用来访问主视图模型。

于 2012-07-30T15:45:48.490 回答
13

您可以使用 ,$root来访问基础对象 - 在您的情况下,它将处于Master.

<!-- ko foreach: humans -->
    <!-- ko foreach: cats -->
        <!-- ko foreach: kittens -->
            <p data-bind="$data.kittenName"></p>
            <p data-bind="$parent.catName"></p>
            <p data-bind="text:console.log($root, $parent, $data)"></p>   <!-- How get master's name? -->
        <!-- /ko -->
    <!-- /ko -->
<!-- /ko -->
于 2012-07-30T12:15:57.010 回答