[英]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 和 Array.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.