2014-05-13 36 views
0

我有一個包含salesPrice類型編號的貓鼬模型。由於貓鼬不支持小數我創建了一個設置器和這樣來自貓鼬模塊小數點的AngularJS輸入

function getSalesPrice(num){ 
    if (num) 
     return (num/100).toFixed(2); 
    else 
     return (0).toFixed(2); 
} 

function setSalesPrice(num){ 
    return num*100; 
} 

在角視圖我想查看與小數值的吸氣劑,所以例如我存儲在模型只有在我的形意$ 0.99 99將顯示爲99

<label for="salesPrice" class="col-md-2 control-label">Salesprice</label> 
<div class="col-md-10"> 
    <input type="number" class="form-control" data-ng-model="asset.salesData.salesPrice" id="salesPrice" placeholder="Sales price in USD"> 
</div> 

什麼方式與此正常工作?

+0

首先,貓鼬絕對支持小數的例子。你應該使用數字類型,然後在其中存儲一個小數(這對應於Javascript的數字類型)。你能更具體地說明你的問題是什麼嗎?你有99個存儲在貓鼬中,你希望它以$ 0.99的角度顯示? – mbroadst

+0

有各種各樣的小數點分隔符。在美國和歐洲,因此我們現在把它作爲字符串解析並乘以100來存儲它。如果我確實輸入0.99並存儲在mongo中,但是0.99並非 –

+0

好的,感謝您澄清「Mongo無法存儲小數點」的含義。我是否正確地假設你打算做的是將Mongodb中的值存儲爲「99」(內部角度「模型」中的值爲「99」),但將其顯示爲「$ 0.99」? – mbroadst

回答

0

如果我理解你的需求是正確的,那麼解決這個問題的最好方法就是使用angular的內置'貨幣'過濾器。如果您有一個$資源以例如十進制格式返回值貓鼬,則可以顯示值,如:

<div ng-repeat="value in values"> 
    {{ value | currency }} 
</div> 

,實現區域設置特定的(基於瀏覽器中查看它)的結果。

here是plnkr表示此關(沒有模擬資源)

+0

謝謝你的工作,但如何使用輸入元素? –