无法解析'javascript:;'来自州'app'

时间:2017-08-24 12:58:08

标签: javascript angularjs

我遇到了麻烦,我不理解。当我点击它时,我有一个配置菜单和一个子菜单。

<li ui-sref-active="active">
      <a ui-sref="javascript:;">
        <i class="fa fa-cogs"></i>
        <span>Configurations</span>
      </a>
      <ul class="sub-menu">
        <li ui-sref-active="active">
          <a ui-sref="app.configurations.inventory">
            <span>Devices</span>
          </a>
        </li>
        <li ui-sref-active="active">
          <a ui-sref="app.configurations.users">
            <span>Users</span>
          </a>
        </li>
        <li ui-sref-active="active">
          <a ui-sref="app.configurations.networks">
            <span>Networks</span>
          </a>
        </li>
        <li ui-sref-active="active">
          <a ui-sref="app.configurations.alerts">
            <span>Alerts</span>
          </a>
        </li>
      </ul>
    </li>
    <!-- configurations -->

问题是当我设置ng时 - 如果我只能看到配置菜单,当我点击它时我收到错误“无法解析”javascript:;'来自州'app'“。

我知道“javascript:;”这在我的路线文件中没有定义。这意味着什么具体?这段代码不是我的,我正在尝试进行一些更改以控制谁可以通过执行ng来查看菜单 - 如果喜欢

<!-- configurations -->
    <li ng-if="permissionGroup.views.configurations" ui-sref-active="active">
      <a ui-sref="javascript:;">
        <i class="fa fa-cogs"></i>
        <span>Configurations</span>
      </a>
      <ul ng-if="permissionGroup.views.configurations" class="sub-menu">
        <li ui-sref-active="active">
          <a ui-sref="app.configurations.inventory">
            <span>Devices</span>
          </a>
        </li>
        <li ui-sref-active="active">
          <a ui-sref="app.configurations.users">
            <span>Users</span>
          </a>
        </li>
        <li ui-sref-active="active">
          <a ui-sref="app.configurations.networks">
            <span>Networks</span>
          </a>
        </li>
        <li ui-sref-active="active">
          <a ui-sref="app.configurations.alerts">
            <span>Alerts</span>
          </a>
        </li>
      </ul>
    </li>
    <!-- configurations -->

要获得Controller上的权限组,我有这段代码

var user = JSON.parse(window.localStorage.getItem("userKey"));      

        $http.get('/api/organization_permissions_groups/'+user.organization_permission_group_id).success(function (data) {           
            $scope.permissionGroup = data;
        });

1 个答案:

答案 0 :(得分:1)

您应该使用ng-show代替ng-if

<!-- configurations -->
    <li ng-show="permissionGroup.views.configurations" ui-sref-active="active">
      <a ui-sref="javascript:;">
        <i class="fa fa-cogs"></i>
        <span>Configurations</span>
      </a>
      <ul ng-show="permissionGroup.views.configurations" class="sub-menu">
        <li ui-sref-active="active">
          <a ui-sref="app.configurations.inventory">
            <span>Devices</span>
          </a>
        </li>
        <li ui-sref-active="active">
          <a ui-sref="app.configurations.users">
            <span>Users</span>
          </a>
        </li>
        <li ui-sref-active="active">
          <a ui-sref="app.configurations.networks">
            <span>Networks</span>
          </a>
        </li>
        <li ui-sref-active="active">
          <a ui-sref="app.configurations.alerts">
            <span>Alerts</span>
          </a>
        </li>
      </ul>
    </li>
    <!-- configurations -->