我想創建一個動態菜單列表,並在選定的項目上應用類。 我有一組菜單條目,menuItems
這是一個observableArray
。Nativescript Repeater databinding
頁面綁定包含兩個項目:
- 的菜單項
- selectedPage
的想法很簡單:應用不同的上課的時候selectedPage
參數等於頁面名稱向用戶指示當前顯示哪個頁面。
<Repeater items="{{menuItems}}" id="repeater">
<Repeater.itemTemplate>
<Label text="{{name}}" class="{{ $parents['Page'].selectedPage == name ? 'selected' : '' }}" tap="navigate" />
</Repeater.itemTemplate>
</Repeater>
這不起作用,所以我做了一些測試,發生了一件奇怪的事情。 當我使用簡單的Label
加入我的Repeater
來測試我的綁定時,我可以訪問好的數據。
<Label text="{{name}}"/>
顯示良好的menuItems
條目名稱。
<Label text="{{$parents['Page'].selectedPage}}"/>
顯示良好的selectedPage
條目名稱。
但,這些代碼示例不能一起工作。兩者都只能獨立工作。
所以,我有點失落,正在使用基於$parents
的選擇器改變Repeater
裏面的上下文嗎?