2016-11-10 20 views
0

ヘルパーがコンマで数値を返すようにしようとしています(100000 = 100,000など)。しかし、正しく戻ってきていますが、私のコンソールにエラーが表示されています。数字にカンマを追加するとエラーが発生する

Exception in template helper: TypeError: Cannot read property 'toString' of undefined

私はそれがundefinedを返しconsole.log(value);場合。

パス:test.js

Template.registerHelper(
    'formatCurrency', function(value) { 
    return value.toString().replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,"); 
    }, 
); 

パス:test.html

{{formatCurrency compareSalary.userSalary}} 
{{formatCurrency compareSalary.min}} 

答えて

1

ヘルパーに共通の障害は、データが戻ってあなたがそれをレンダリングしようとする時点で、サブスクリプションからではないということです。これを返す前に値をテストすることでこれを防ぐことができます:

Template.registerHelper(
    'formatCurrency',(value)=>{ 
    return value && value.toString().replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,"); 
    }, 
); 
関連する問題