Нужен хороший пример: когда будет полезен templateShareable = true? - PullRequest
1 голос
/ 29 января 2020

В документации UI5 подробно объясняется, как работает свойство templateShareable в связывании агрегации и что оно делает. Есть даже правила, когда использовать какое значение. Правило для templateSharable=true гласит:

Используйте эту опцию только в следующих случаях:

  • Шаблон повторно используется в вашем приложении для определения дополнительного списка связывание. [...]

  • Родительский элемент управления, содержащий привязку списка с шаблоном, клонируется. Информация о привязке также используется в клоне. [...]

Я понимаю эти утверждения, но мне трудно представить, как это будет выглядеть. Может кто-нибудь указать мне хороший пример , где выполняется одно из этих условий?

1 Ответ

2 голосов
/ 30 января 2020

Хотя в документации есть полезный пример.

<Table id="EmployeeEquipments" headerText="Employee Equipments" items="{
    path: 'EMPLOYEE_2_EQUIPMENTS',
    templateShareable: false
}">
    <columns>
        <!-- ... -->
    </columns>
    <items>
        <ColumnListItem>
            <cells>
                <Text text="{ID}"/>
            </cells>
            <cells>
                <Text text="{EQUIPMENT_2_PRODUCT/Name}"/>
            </cells>
            <cells>
                <Text text="{Category}"/>
            </cells>
            <cells>
                <!-- Name="PRODUCT_2_CATEGORY" Type="Collection(...)" -->
                <List items="{
                    path: 'EQUIPMENT_2_PRODUCT/PRODUCT_2_CATEGORY',
                    templateShareable: true
                }">
                    <StandardListItem title="{CategoryName}"/>
                </List>
            </cells>
            <cells>
                <Text text="{EQUIPMENT_2_PRODUCT/PRODUCT_2_SUPPLIER/Supplier_Name}"/>
            </cells>
        </ColumnListItem>
    </items>
</Table>

Я вижу список внутри таблицы. Таблица используется один раз, поскольку она определяет одну таблицу (templateShareable: false). Внутри каждой строки таблицы находится ячейка, содержащая список, поэтому список создается много раз - по одному разу для каждой строки таблицы - поэтому определение списка клонируется для каждой строки или каждый раз, когда строка добавляется в таблица и, следовательно, необходимо: templateShareable: true.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...