SAPUI5 - ComponentContainer - дублированный идентификатор при маршрутизации назад - PullRequest
0 голосов
/ 17 мая 2019

В настоящее время я создал компонентный контейнер в моем родительском приложении, который содержит функцию поиска в моем дочернем приложении. После поиска пользователь попадает на страницу родительского приложения, которая работает ..

Однако, если я хочу вернуться на страницу, которая содержит контейнер компонента, он выдаст мне две повторяющиеся ошибки идентификатора.

добавление элемента с повторяющимся идентификатором '__component1 --- View1'

'добавление элемента с повторяющимся идентификатором' __component2 --- View1 '

Однако я исправил первый, назначив контейнер компонента, содержащий идентификатор, и выполняя для него .destroy, когда страница будет перенаправлена.

Тем не менее, я получаю сообщение об ошибке «добавление элемента с повторяющимся идентификатором» __component2 --- View1 ', и я не слишком уверен, откуда на него ссылаются. Я также попытался выполнить .destroy для этого контейнера, однако, кажется, что он не существует при выполнении sap.ui.getcore (). Byid.

попытался уничтожить компонент поиска изнутри контейнера компонента, однако я не могу сослаться на идентификатор (не знаю, что это за идентификатор). Попытался сослаться на '__component2 --- View', однако этого нигде не существует - даже при поиске. через отладчик.

также пытался назначить контейнер жизненного цикла, но по-прежнему выдает ту же ошибку.

<App id="idAppControl">
        <pages>
            <Page title="Customer Search" id="pageID" backgroundDesign="Transparent" enableScrolling="false">
                <content>
                    <core:ComponentContainer width="100%"
                        id="componentSearch"
                        name="zchildapp.zchildapp" 
                        component="zchildapp.zchildapp" />
                </content>
            </Page>
        </pages>
    </App>

parentapp.js

sap.ui.define([
        "sap/ui/core/mvc/Controller",
        "sap/ui/model/json/JSONModel",
        "sap/m/MessageBox",
        "sap/ui/model/FilterOperator",
        "sap/m/MessageToast",
        "sap/m/Dialog",
        "sap/m/Text",
        "sap/m/Button",
        "sap/ui/model/Filter"
    ],
    function (Controller, JSONModel, MessageBox, FilterOperator, MessageToast, Dialog, Text, Button, Filter) {
        "use strict";


        var that = this;
        var oRouter;
        var componentSearch;


        var PageController = Controller.extend("Z_LE.Z_LE.controller.BookAppointmentV4", {




            onInit: function () {
                that = this;
                componentSearch = that.byId("componentSearch");
                // var comp2 = that.byId("__component2---View1");

                var route = sap.ui.core.UIComponent.getRouterFor(this);
                route.attachRouteMatched(function (oEvent) {
                    componentSearch.destroy();
                    // comp2.destroy();
                });



            },


        return PageController;
    });

'добавление элемента с повторяющимся идентификатором' __component1 --- View1 '

'добавление элемента с повторяющимся идентификатором' __component2 --- View1 '

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