тройная операция привязки элемента в представлении списка не работает.
https://play.nativescript.org/?template=play-js&id=xMm9oJ&v=2
<FlexboxLayout flexDirection = "row" class = "list-group-item">
<Image src = "{{ imageSrc }}" class = "thumb img-circle" />
<Label text = "{{ name = 'Spain' ? 'INDIA' : name }}" class = "list-group-item-heading"
verticalAlignment = "center" style = "width: 60%" />
</FlexboxLayout>
countries: [
{ name: "Australia", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/au.png" },
{ name: "Belgium", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/be.png" },
{ name: "Bulgaria", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/bg.png" },
{ name: "Canada", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/ca.png" },
{ name: "Switzerland", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/ch.png" },
{ name: "China", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/cn.png" },
{ name: "Czech Republic", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/cz.png" },
{ name: "Germany", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/de.png" },
{ name: "Spain", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/es.png" },
{ name: "Ethiopia", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/et.png" },
{ name: "Croatia", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/hr.png" },
{ name: "Hungary", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/hu.png" },
{ name: "Italy", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/it.png" },
{ name: "Jamaica", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/jm.png" },
{ name: "Romania", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/ro.png" },
{ name: "Russia", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/ru.png" },
{ name: "United States", imageSrc: "https://play.nativescript.org/dist/assets/img/flags/us.png" },
],
Я пытался показать Индию вместо Испании, но у меня не получилось. если это невозможно, то как этого добиться?
Не забудьте добавить дополнительный =
к вашему оператору. Похоже, вы на самом деле назначаете INDIA как имя каждого свойства имени, которое у вас есть.
<FlexboxLayout flexDirection = "row" class = "list-group-item">
<Image src = "{{ imageSrc }}" class = "thumb img-circle" />
<Label text = "{{ name === 'Spain' ? 'INDIA' : name }}" class = "list-group-item-heading"
verticalAlignment = "center" style = "width: 60%" />
</FlexboxLayout>
Вы также можете избежать фигурных скобок и использовать синтаксис привязки. Это чище.
<FlexboxLayout flexDirection = "row" class = "list-group-item">
<Image [src] = "imageSrc" class = "thumb img-circle" />
<Label [text] = "name === 'Spain' ? 'INDIA' : name" class = "list-group-item-heading"
verticalAlignment = "center" style = "width: 60%" />
</FlexboxLayout>
тройная операция будет работать в зависимости от условия. если его результат истинен или ложен, тогда он будет работать нормально. поэтому нужно быть очень осторожным при написании оператора условия. т.к. в коде вместо == написано = . вот почему он не работает.