2014-12-06 23 views
0

我正在使用使用{{}}分隔符編寫的角庫。出於某種原因,我不得不改變分隔符爲我的項目(假設我使用[[]]AngularJS編寫自定義分隔符兼容指令

的問題是,該庫的指令是使用常規分隔符{{}}寫,因此不interpolated的正確方法了。

有沒有辦法編寫一個指令,能夠插入任何當前分隔符的參數?

+0

最好的猜測是你將無法切換,因爲你必須在角度配置中進行更改。 – charlietfl 2014-12-06 18:27:55

+1

您是否考慮在您的html代碼中使用「ng-bind」指令代替{{}}? 幾乎可以在任何地方使用{{foo}}。 – 2014-12-06 18:44:51

+0

@PrahladYeri [我正在使用的指令](https://github.com/driftyco/ionic/blob/master/js/angular/directive/item.js)是使用'{{''}}插值屬性'符號。如果ng-bind對內容本身起作用,那麼這些屬性是否有某些內容?通過編寫這個,我意識到他們可能會簡單地使用動態獲取的分隔符來更改模板。 – 2014-12-07 05:41:43

回答

1

如果ng-bind對內容本身起作用,那麼對於屬性是否有某些東西?

使用ng-bind:類屬性值模板語法。例如:

<div class="ng-bind: expression;"> ... </div> 

指令申報方式有四個變化:

E - Element name (default): <my-directive></my-directive> 
A - Attribute (default): <div my-directive="exp"></div> 
C - Class: <div class="my-directive: exp;"></div> 
M - Comment: <!-- directive: my-directive exp --> 

參考

+0

不是我正在尋找的東西,但可以,因爲它也可以在某些情況下工作。我發現[這篇文章](http://stackoverflow.com/questions/12923521/angular-js-custom-delimiter),它有助於獲得當前的「startSymbol」和「endSymbol」,然後可用於僞造正確的「把手」。 – 2015-07-23 19:08:24