簡體   English   中英

更改角度指令中的屬性值

[英]Change the value of an attribute in an angular directive

我有一個要求,對於某些類型的作用域變量,我想在AngularJs中保留兩位小數。 為此,我做了以下工作:

html

<span floatval="{{someVariable}}">{{someVariable}}</span>

js

var app = angular.module('app',[]).directive('floatval', function(){
    return function(scope, element, attrs){
        var newInt = parseFloat(attrs.floatval);
        var n = newInt.toFixed(2);
    }
});

我被困在這里,因為我現在不知道如何在原始范圍{{somevariable}}的地方反映出這個新價值

您可以指定指令的范圍。 這樣就建立了雙向綁定。

var app = angular.module('app',[]).directive('floatval', function(){
    return {
        scope: {
            floatval: '='
        },
        link: function(scope, element, attrs){
            scope.floatval = parseFloat(scope.floatval).toFixed(2);
        }
    };
});

然后,您需要更改HTML <span floatval="someVariable">{{someVariable}}</span>

參見https://code.angularjs.org/1.3.15/docs/guide/directive

鏈接至示例plnkr: http ://plnkr.co/edit/aRyp1v9tGH7z8X28fewP?p=preview

為什么不使用內置過濾器? https://docs.angularjs.org/api/ng/filter/number

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM