2015-04-29 8 views
8

कोणीयजेएस और कोणीय-अनुवाद का उपयोग करके मैं एक अनुवादित पाठ में पैरामीटर के रूप में एक तिथि डालने का प्रयास कर रहा हूं।कोणीयजेएस अनुवाद: प्रारूप गतिशील दिनांक

<p>{{ 'MyText' | translate:{myDate:someControllerDate} }}</p> 
इस के साथ

एक स्थानीय json-फाइल में:

(english)'MyText': 'This is the date: {{myDate}}.' 
(danish) 'MyText': 'Dette {{myDate}} er datoen.' 

इससे मुझे:

(अंग्रेज़ी) यह

मूल कार्य का अनुवाद पैकेज से प्रलेखित है तारीख है: 2015-04-29 टी 00: 00: 00।

(डैनिश) डेट 2015-04-29T00: 00: 00 er datoen।

समस्या: मैं तिथि भाषा से मेल करने फ़ॉर्मेट करने के लिए (या संस्कृति है, लेकिन अब के लिए भाषा का काफी अच्छा हो जाएगा) चाहते हैं।

वांछित परिणाम है:

(अंग्रेज़ी) यह तारीख है: 2015/04/29।

(डैनिश) डेट 29-04-2015 er datoen।

मैं इन पंक्तियों के साथ एक वाक्य रचना के लिए उम्मीद की गई थी:

(english)'MyText': 'This is the date: {{myDate:MM-dd-yyyy}}.' 
(danish) 'MyText': Dette {{myDate:dd-MM-yyyy}} er datoen.' 

या शायद:

<p>{{ 'MyText' | translate:{{myDate:someControllerDate | translate:'MyDateFormat'}} }}</p> 

साथ

(english)'MyDateFormat': 'MM-dd-yyyy' 
(danish) 'MyDateFormat': 'dd-MM-yyyy' 

वहाँ वांछित परिणाम प्राप्त करने का कोई तरीका है, अधिमानतः नियंत्रक के अंदर की तारीख को प्रारूपित किए बिना (तर्क रखना और अलग देखें)?

+0

http चमत्कार पूरा कर सकते हैं: // momentjs।कॉम/ –

+0

क्या आप उदाहरण दे सकते हैं कि इसे कोणीय-अनुवाद के साथ कैसे उपयोग किया जा सकता है? –

उत्तर

12

मान लिया जाये कि आप निम्नलिखित angular-translate अनुवाद परिभाषाओं है

//de  
"with_date": "German: {{date|date:'short'}}" 

//en  
"with_date": "English: {{date|date:'medium'}}" 

फिर एक दृश्य के अंदर आप कर सकते हैं:

<h1>{{ 'with_date'|translate:{date:today} }}</h1> 

कहाँ today नियंत्रक यानी में परिभाषित किया गया है:

$scope.today = new Date(); 

मान लिया जाये आपने कोर के साथ angular-locale_* लोड किया है रेक्ट लोकेल तारीखों को एक भाषा/देश विशिष्ट तरीके से स्वरूपित किया जाएगा।

यहां एक demo है।

कहा करने के बाद कि स्थानीयकरण कोणीय (ngLocale) में निर्मित तंत्र बहुत सीमित है और जब यह दिनांकों के लिए आता है आप के साथ moment.js

+0

बिल्कुल वही जो मैं खोज रहा था। धन्यवाद! –

+0

दस्तावेज़ों से: 'कोणीय डेटाटाइम फ़िल्टर ब्राउज़र की समय क्षेत्र सेटिंग्स का उपयोग करता है।', इसलिए यह तब तक काम नहीं करेगा जब तक कि आप ब्राउज़र अनुवाद को '$ translate.use (' en_US ') के साथ बदल नहीं देते। – slackmart

संबंधित मुद्दे