Невозможно размонтировать компонент React - PullRequest
0 голосов
/ 23 января 2019

Я пытаюсь отключить компонент реакции, когда происходит изменение сущности, для этого я использую функцию rerenderSearchPanel в своем проекте angularJS, а затем пытаюсь смонтировать его с помощью функции initializeSearchPanel.

ВнутриrerenderSearchPanel У меня следующий код

searchElement && ReactDOM.unmountComponentAtNode(searchElement);

, но после выполнения этой строки компонент по-прежнему существует в своей структуре.

function rerenderSearchPanel(selectedEntity, savedChips) {
        var searchElement = document.getElementById("searchPanel");
        searchElement && ReactDOM.unmountComponentAtNode(searchElement);
        $scope.initializeSearchPanel(selectedEntity, savedChips);
    }

$scope.initializeSearchPanel = function (selectedEntity, savedChips) {

        var searchElement = document.getElementById("searchPanel");
        var searchDataSource = {
            method: "GET",
            catalogAPI: $scope.metaRestUrl + "specifications? 
                   q=specName;EQUALS;EntityAttribute&q=subType;EQUALS;English",
            searchAPI: $rootScope.smRestUrl + "graphSearch?limit=100&page=1",
            selectedEntity: (selectedEntity ? selectedEntity : 
                             $scope.currentEntity),
        };

        requestConfig.headers['TransformationEnabled'] = true;
        searchDataSource.headers = requestConfig.headers

        var options = {
            searchProps: {
                id: "searchInput1",
                placeHolder: "Search",
                editable: true,
            },
            chips: savedChips,
            onTokenChange: $scope.search,
            dataSource: searchDataSource
        }

        var search = React.createElement(SearchComponent, options);
        searchElement && ReactDOM.render(search, searchElement);
    }

Но ReactDOM.unmountComponentAtNode не отключается.

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