簡體   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