2013-03-12 42 views
1

我想加入$index$data文字結合在一起:

<ul data-bind='foreach: myItems'> 
    <li data-bind="text: $index() + ': ' + $data()"></li> 
</ul> 

,但上面的語法不工作。 KO不支持這種情況嗎?我是否需要編寫一些輔助函數或將可觀測值計算到我的模型中?

+0

你得到的錯誤是什麼? – 2013-03-12 14:32:24

+0

你的'$ data'是什麼?也許嘗試:'

  • ' – nemesv 2013-03-12 14:35:13

    +0

    @PaulManzotti:TypeError:$ data不是函數; – 2013-03-12 14:36:17

    回答

    2

    除非你有myItems陣列內部功能您$data不會是正常的功能,所以你不需要()

    當你的例外也講述了這樣:

    TypeError: $data is not a function;

    所以以下代碼應該可以工作:

    <ul data-bind='foreach: myItems'> 
        <li data-bind="text: $index() + ': ' + $data"></li> 
    </ul> 
    
    +0

    即使數組中有可觀察對象,也不會觀察到「$ data」。但不要嘗試,因爲它有一個[Knockout中的錯誤](https://github.com/SteveSanderson/knockout/issues/482)。 – 2013-03-13 01:49:11