Вложенные представления пользовательского интерфейса Angularjs: не нужно перезагружать TreeView - PullRequest
0 голосов
/ 25 августа 2018

Я использую Angularjs UI-Router с моим основным приложением DotNet.Хотя я использую сложную маршрутизацию вложенных представлений, но все работает нормально.

Я разделил свою страницу на две части, левая - для просмотра дерева, а правая - для форм, связанных с меню просмотра дерева.Правая сторона снова имеет вложенные представления в виде вкладок, но моя проблема с treview.То, что я хочу, это когда я нажимаю на любую опцию меню в древовидном меню, тогда только правая часть должна быть изменена. Древовидная структура не должна перезагружаться.

enter image description here

Я просто не хочу перезагружать мою левую сторону (Дерево)

Вот мой код маршрутизатора

    var app = angular.module('MyApp', ['ui.router']);

    app.config(function ($stateProvider, $urlRouterProvider) {

    $stateProvider

        // loading page having tree on left side and content on the right side...
        .state('NetworkDistribution', {
            url: "/NetworkDistribution/{id}",
            views: {
                'container-view': {
                    templateUrl:"NetworkArchive/_Index"
                },
                'left-view@NetworkDistribution' :{
                    templateUrl:"NetworkArchive/_TreeView"
                },
                'right-view@NetworkDistribution' :{
                    templateUrl: function(stateParams) {
                        return '/NetworkArchive/GridList/' + stateParams.id;
                    }
                }
            }
        })

        // loading content on the right side when click on the option from the Tree(Left Side TreeView)...
        .state('NetworkDistribution.Grid', {
            url: "Grid/{id}",
            views: {
                'container-view': {
                    templateUrl:"NetworkArchive/_Index"
                },
                'left-view@NetworkDistribution' :{
                    templateUrl:"NetworkArchive/_TreeView"
                },
                'right-view@NetworkDistribution' :{
                    templateUrl: function(stateParams) {
                        return "NetworkArchive/Grid/" + stateParams.id;
                    }
                },
                'content-view@NetworkDistribution.Grid' :{
                    templateUrl: function(stateParams) {
                        return "NetworkArchive/GridInfo/" + stateParams.id;
                    }
                }
            }

        })

Я просто не хочу перезагружать TreeView, когда нажата кнопка state => NetworkDistribution.Grid.

...