Javascript 如何将hasOwnProperty与AngularJS指令'attrs'对象一起使用
我有一个名为Javascript 如何将hasOwnProperty与AngularJS指令'attrs'对象一起使用,javascript,html,angularjs,angularjs-directive,Javascript,Html,Angularjs,Angularjs Directive,我有一个名为ipabc的指令,用于检查字段的输入值并转换为美元格式的值。我有一个条件,如果我们的值是“0”,那么我将把它转换成$0 ipabc.js var filterFunc = function (value) { if(value == '0'){ if(attrs.hasOwnProperty('ipZeroDollar')){ var currencyValue = $filter('currency')(value); currencyV
ipabc
的指令,用于检查字段的输入值并转换为美元格式的值。我有一个条件,如果我们的值是“0”,那么我将把它转换成$0
ipabc.js
var filterFunc = function (value) {
if(value == '0'){
if(attrs.hasOwnProperty('ipZeroDollar')){
var currencyValue = $filter('currency')(value);
currencyValue = currencyValue.toString();
return currencyValue.replace('.00','');
}
}
我面临的问题是,如何在HTML中设置ipzerodolar=true
。到目前为止,(attrs.hasOwnProperty('ipZeroDollar')
将以false
的形式出现
<div ng-class = {'//something'}
<input type="tel" name="amount" class="form-control" ng
model="Data.Amount" maxlength="15" required ip-abc/>
</div>
这就是如何使用hasOwnProperty()
似乎您希望调用hasOwnProperty()
onData
,因为这看起来像是一个对象,而这正是您获取金额的地方
我面临的问题是,如何在HTML中设置ipzerodolar=true
。到目前为止,(attrs.hasOwnProperty('ipZeroDollar'))
是假的
需要将HTML中的规范化为:
<input type="tel" name="amount" class="form-control"
ng-model="Data.Amount" maxlength="15" required
ip-abc ip-zero-dollar />
attrs
来自哪里?无论如何,这不太可能成为一种财产。更有可能是一个条目。(例如,attrs
更可能是一个名称/值对列表。当然是,但我不知道角度的东西…)如果attrs是一个包含
HTML标记属性的对象,请将名称更改为“data ipzerodolar”,并将输入更改为
。但是像data currency=“ipzerodular”
这样的东西可能更好,这样您可以支持多种货币,但只能支持一个属性。再说一次,我甚至不确定在使用angular时,作为一个数据属性,这是否有意义。我也不理解使用电话输入来描述货币价值。如果这有效,请接受答案,以便其他人知道问题已经解决。
<input type="tel" name="amount" class="form-control"
ng-model="Data.Amount" maxlength="15" required
ip-abc ip-zero-dollar />