如何在 Nativescript XML 中使用设置 javascript 变量值
How to use set javascript variable value for use in Nativescript XML
我正在使用 radlistview 从我的远程服务器加载数据,我对 radlistview 中的某些元素使用 if 语句。
horizontalAlignment="{{ (seller != myemail) ? 'right' : 'left' }}
我遇到的问题是,seller 是从远程服务器加载的,而 myemail 的值是使用 viewModel.set("myemail", "example");
。但这不起作用,radlistview 中似乎只能使用从服务器加载的数据。有没有办法我也可以在我的 viewModel 中设置值并在我的 xml
中使用它
这是我的 radlistview 代码
<lv:RadListView style="height:100%;" row="1" items="{{ dataItems }}" loaded="onListLoaded" loadOnDemandMode="Auto" loadMoreDataRequested="{{ onLoadMoreItemsRequested }}" itemLoading="{{ onItemLoading }}" class="list-group">
<lv:RadListView.listViewLayout>
<lv:ListViewLinearLayout scrollDirection="Vertical" dynamicItemSize="false" itemInsertAnimation="Scale" itemDeleteAnimation="Scale"/>
</lv:RadListView.listViewLayout>
<lv:RadListView.itemTemplate>
<StackLayout>
<StackLayout class="message-item" style="width:75%;" horizontalAlignment="{{ (seller != myemail) ? 'right' : 'left' }}">
<StackLayout class="message-block" verticalAlignment="top" horizontalAlignment="{{ (seller != sender) ? 'right' : 'left' }}" borderTopRightRadius="{{ (seller !== sender) ? '0' : '10' }}" borderTopLeftRadius="{{ (seller != sender) ? '10' : '0' }}" style="{{ (seller != sender) ? 'background-color:#b9d4c8' : 'background-color:#cef5e9' }}">
<Label text="{{ (seller != myemail) ? 'You' : sender }}" verticalAlignment="top" class="message-autor"></Label>
<Label text="{{ message }}" textWrap="true" verticalAlignment="top" class="message-body"></Label>
</StackLayout>
</StackLayout>
</StackLayout>
</lv:RadListView.itemTemplate>
</lv:RadListView>
提前致谢,如果您需要更多信息,请告诉我
正如您所发现的,RadListView 中每个项目的绑定内容是相应的数组条目。要引用页面的绑定上下文,您可以使用 $parents['Page'].myemail
.
我正在使用 radlistview 从我的远程服务器加载数据,我对 radlistview 中的某些元素使用 if 语句。
horizontalAlignment="{{ (seller != myemail) ? 'right' : 'left' }}
我遇到的问题是,seller 是从远程服务器加载的,而 myemail 的值是使用 viewModel.set("myemail", "example");
。但这不起作用,radlistview 中似乎只能使用从服务器加载的数据。有没有办法我也可以在我的 viewModel 中设置值并在我的 xml
这是我的 radlistview 代码
<lv:RadListView style="height:100%;" row="1" items="{{ dataItems }}" loaded="onListLoaded" loadOnDemandMode="Auto" loadMoreDataRequested="{{ onLoadMoreItemsRequested }}" itemLoading="{{ onItemLoading }}" class="list-group">
<lv:RadListView.listViewLayout>
<lv:ListViewLinearLayout scrollDirection="Vertical" dynamicItemSize="false" itemInsertAnimation="Scale" itemDeleteAnimation="Scale"/>
</lv:RadListView.listViewLayout>
<lv:RadListView.itemTemplate>
<StackLayout>
<StackLayout class="message-item" style="width:75%;" horizontalAlignment="{{ (seller != myemail) ? 'right' : 'left' }}">
<StackLayout class="message-block" verticalAlignment="top" horizontalAlignment="{{ (seller != sender) ? 'right' : 'left' }}" borderTopRightRadius="{{ (seller !== sender) ? '0' : '10' }}" borderTopLeftRadius="{{ (seller != sender) ? '10' : '0' }}" style="{{ (seller != sender) ? 'background-color:#b9d4c8' : 'background-color:#cef5e9' }}">
<Label text="{{ (seller != myemail) ? 'You' : sender }}" verticalAlignment="top" class="message-autor"></Label>
<Label text="{{ message }}" textWrap="true" verticalAlignment="top" class="message-body"></Label>
</StackLayout>
</StackLayout>
</StackLayout>
</lv:RadListView.itemTemplate>
</lv:RadListView>
提前致谢,如果您需要更多信息,请告诉我
正如您所发现的,RadListView 中每个项目的绑定内容是相应的数组条目。要引用页面的绑定上下文,您可以使用 $parents['Page'].myemail
.