ExtJS的中法語千位分隔符
阿新 • • 發佈:2019-01-09
法語的千位分隔符應該是什麼?相信大部分國際化從業者都很清楚,對!就是如下圖所示的空格。
難道是ExtJS自己的bug?去原始碼找找看吧。一番努力後,果然在ext-lang-fr.js的第78行發現了端倪。這裡的期望結果應該是thousandSeparator: ' '而不是thousandSeparator:'.'。怎麼辦?寫個third party issue然後close麼?
左思右想,最終我們還是向Sencha發了mail,同時開了ticket。沒成想,Sencha support團隊很快就做出了迴應,郵件正文如下。
Hi,
Thank you for contacting Sencha Support!
I completely agree, we're sorry for the incorrect information.
You've got two alternatives to fix this:
a) Manually update the ext-lang-fr.js file to correct this
or
b) include the following code at the beginning of your app.js file:
Ext.apply(Ext.util.Format, {
thousandSeparator: ' '
});
Both options will instruct the Ext.util.Format class to use the correct character.
I've refunded your x-credits for this ticket since it's caused by an issue with the framework files.
Best regards,
Sencha Support Team
問題解決!同時友情提醒大家,日後一旦你也遇到了ExtJS法文千位分隔符顯示異常情況時,請先查驗ext-lang-fr.js檔案是否已採用最新版本。
獨樂樂,與人樂樂,孰樂乎?不若與人。古人誠不欺餘也!
講到這裡,就先分享一個因為這小空格曾引發的血案吧……話說五年前,那時我在某金融機構供職,負責一個監控債券價格浮動的專案。要求一旦債券價格高於或低於某個值時,立刻發出alert,警告所有交易員。平日測試都是獲取英文訊息源,但產品上線的那天,好巧不巧,英文訊息源down機,程式轉而從法文訊息源獲取。而法文訊息中的債券價格千位正是這個小空格,並不是我們期望的”,”。那結果呢?還用問麼?自然是什麼都沒獲取到,沒有任何alert生成,交易員也因此錯過了最佳時機。
故事結束了,回到本文要介紹的案例吧。這裡我們用ExtJS作為前端框架,發現UI展示出來的法文千位分隔符不是期望的空格。呼叫錯誤麼?反覆嘗試後,證明沒有任何問題。
左思右想,最終我們還是向Sencha發了mail,同時開了ticket。沒成想,Sencha support團隊很快就做出了迴應,郵件正文如下。
Hi,
Thank you for contacting Sencha Support!
I completely agree, we're sorry for the incorrect information.
You've got two alternatives to fix this:
a) Manually update the ext-lang-fr.js file to correct this
or
b) include the following code at the beginning of your app.js file:
Ext.apply(Ext.util.Format, {
thousandSeparator: ' '
});
Both options will instruct the Ext.util.Format class to use the correct character.
I've refunded your x-credits for this ticket since it's caused by an issue with the framework files.
Best regards,
Sencha Support Team
問題解決!同時友情提醒大家,日後一旦你也遇到了ExtJS法文千位分隔符顯示異常情況時,請先查驗ext-lang-fr.js檔案是否已採用最新版本。
獨樂樂,與人樂樂,孰樂乎?不若與人。古人誠不欺餘也!