Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用angular.js单击子菜单时无法激活父菜单_Javascript_Angularjs_Angular Ui Router - Fatal编程技术网

Javascript 使用angular.js单击子菜单时无法激活父菜单

Javascript 使用angular.js单击子菜单时无法激活父菜单,javascript,angularjs,angular-ui-router,Javascript,Angularjs,Angular Ui Router,我需要一个帮助。我需要当用户点击子菜单时,父菜单将被激活。请检查下面的代码 dashboard.html: 在这种情况下,当用户单击资源时,它将重定向到下面的页面 <div class="container"> <div class="codrops-top"> <span class="right"> <a href="#"> <strong>Select below options to choose the form</st

我需要一个帮助。我需要当用户点击子菜单时,父菜单将被激活。请检查下面的代码

dashboard.html:

在这种情况下,当用户单击
资源
时,它将重定向到下面的页面

<div class="container">
<div class="codrops-top">
<span class="right">
<a href="#">
<strong>Select below options to choose the form</strong>
</a>
</span>
</div><!--/ Codrops top bar -->
<header>

<nav class="codrops-demos">
<ul class="nav nav-sidebar" ng-class="{active: $state.includes('dashboard')}" >
<li ui-sref-active="active"><a ui-sref=".userrole">Add User Role</a></li>
<li ui-sref-active="active"><a ui-sref=".course">Add Course</a></li>
<li ui-sref-active="active"><a ui-sref=".submenu3">Submenu3</a></li>
</ul>
</nav>
</header>
<div ui-view>

</div>
</div>

  • 添加用户角色
  • 添加课程
  • 子菜单3

这里我需要当用户单击上面页面的任何子菜单时,父菜单(“资源”)将与此子菜单一起激活。请帮助我。

我在mainCtrl中创建自己的助手功能,如:

    menueActive(mainMenueName) {
        return this.$state.includes(mainMenueName);
    }
路由配置:

      this.$stateProvider
            .state('NotAuthorized', {
                url: "/NotAuthorized",
                templateUrl: "Account/NotAuthorized"
            })
            .state("User", {
                url: "/User",
                templateUrl: "User/UserMenue"
            })
            .state("User.User", {
                url: "/User?{id:int}",
                templateUrl: "User/User"
            })
            .state("User.Accounts", {
                url: "/Accounts?{id:number}",
                templateUrl: "User/Accounts"
            })
            .state("Permission", {
                url: "/Permission",
                templateUrl: "Permission/PermissionMenue"
            })
用法:

            <li ng-class="{active: main.menueActive('Permission')}">
                <a ui-sref="Permission.Matrix" title="Permission">
                    <i class="fa fa-lock">
                    </i>
                    &nbsp;Permission
                </a>
            </li>
            <li ng-class="{active: main.menueActive('User')}">
                <a ui-sref="User.User" title="User">
                    <i class="fa fa-user">
                    </i>
                    &nbsp;User
                </a>
            </li>
        </ul>
  • 许可
  • 使用者

  • 我在mainCtrl中创建自己的助手函数,如:

        menueActive(mainMenueName) {
            return this.$state.includes(mainMenueName);
        }
    
    路由配置:

          this.$stateProvider
                .state('NotAuthorized', {
                    url: "/NotAuthorized",
                    templateUrl: "Account/NotAuthorized"
                })
                .state("User", {
                    url: "/User",
                    templateUrl: "User/UserMenue"
                })
                .state("User.User", {
                    url: "/User?{id:int}",
                    templateUrl: "User/User"
                })
                .state("User.Accounts", {
                    url: "/Accounts?{id:number}",
                    templateUrl: "User/Accounts"
                })
                .state("Permission", {
                    url: "/Permission",
                    templateUrl: "Permission/PermissionMenue"
                })
    
    用法:

                <li ng-class="{active: main.menueActive('Permission')}">
                    <a ui-sref="Permission.Matrix" title="Permission">
                        <i class="fa fa-lock">
                        </i>
                        &nbsp;Permission
                    </a>
                </li>
                <li ng-class="{active: main.menueActive('User')}">
                    <a ui-sref="User.User" title="User">
                        <i class="fa fa-user">
                        </i>
                        &nbsp;User
                    </a>
                </li>
            </ul>
    
  • 许可
  • 使用者

  • Known Github Issue:Known Github Issue:@sqadwuschel:我对此不清楚。你能编辑你的完整答案吗?意思是它将从每个子州调用吗?不,它只从每个主菜单项调用,你用当前菜单名调用它。-更新了我上面的示例@sqadwuschel:我不清楚这一点。你能编辑你的完整答案吗?它将从每个子州调用吗?不,它只从每个主菜单项调用,你用当前菜单名调用它。-更新了上面的示例