繁体   English   中英

如何在 AngularJS 中获取字符串子路径

[英]How to get string subpath in AngularJS

我有一些从 db 加载并附加到 html 的数据,如下所示:

<td>
  <p class="namepath" ng-bind-html="getNamePath(l)"></p>
</td>

我的控制器:

$scope.getNamePath = function (l) {
    let namepath = l.currpath;
    let t = namepath.split('/').map(function (text, i) {
        return '<span ng-click="changeNamePath(' + i + ',' + namepath + ')"' + i + '>' + text + '</span>';
    }).join('/');
    return t;
};

我的 l.currpath 有一些这样的数据:

l.currpath = a/b/c/d ...

当您单击 c 我想返回a/b/c ,单击 b 我想返回a/b ...

我怎样才能做到这一点?

我没有测试这个,但想法是使用 Array.indexOf 和 A​​rray.slice 和 Array.join 方法:

    let t = namepath.split('/');
    let i = t.indexOf(pathNameFromButtonClick);
    let finalNamePath = t.slice(0, i+1).join('/');
    return finalNamePath;

ng-bind-html指令不会编译 AngularJS 指令,例如ng-click 而是使用类似的东西:

<td>
  <p class="namepath">
     <span ng-repeat="namePath in l.currpath.split('/')"
           ng-click="changeNamePath($index, l.currpath)"
     >
       {{namePath}}<span ng-hide="$last">/</span>
     </span>
  </p>
</td>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM