2014-05-20 11 views
9

मैं एक चुनिंदा ड्रॉप-डाउन का अनुवाद करने की कोशिश कर रहा हूं और मुझे यह पसंद नहीं है कि मैं इसे कर रहा हूं, क्योंकि यह बोझिल है और यह पूरे कोणीय-अनुवाद ढांचे को छोड़ देता है।कोणीय-अनुवाद विज्ञापन एनजी-विकल्प

लोकेल डेटा {"लैंग" जैसा दिखता है: {"लेबल": "टेक्स्ट", "चयन करें": {"के 1": "var1", "k2": "var2"}}} और यदि मैं plonk नियंत्रक दायरे में "चयन करें" सदस्य, मैं चयन के एनजी विकल्पों में "के रूप में v (v, v) scopedvar में कुछ लिख सकता हूं।

असल में मैं भाषा संकल्प करने के लिए अनुवाद करना चाहता हूं और फिर रास्ते से बाहर निकलना चाहता हूं और अपने विकल्पों के लिए स्थानीयकरण के मानचित्र को वापस कर सकता हूं। अगर यह समझ में आया, तो कुछ ऐसा: "के रूप में वी के लिए v (के, वी) 'चयन' में अनुवाद करें। अनुवाद करें, लेकिन निश्चित रूप से यह नहीं है।

क्या किसी ने इस मुद्दे का सामना किया है (और हल)?

TIA, एडोआर्डो

उत्तर

23

मैं पूरी तरह से आप क्या हासिल करने की कोशिश कर रहे हैं नहीं मिला है, लेकिन मैं कुछ कोड है कि के साथ पुन: लोड विकल्प अनुवाद के लिए ठीक काम करता है डाल देता हूँ | फ़िल्टर का अनुवाद करें।

मान लिया जाये कि आप अपने अनुवाद के लिए कुंजी/मान के रूप में इस json है:

var english = {"lang": { 
       "label": "text", 
       "select": { 
        "k1": "var1", 
        "k2": "var2" 
       }} 
       }; 

और अपने नियंत्रक इस तरह विकल्पों में से एक सूची बनाता है:

$scope.optionsList = [ 
    {val: 'var1', translationKey: 'lang.select.k1'}, 
    {val: 'var2', translationKey: 'lang.select.k2'} 
]; 

आप डालने जाना अच्छा होना चाहिए एनजी-विकल्प अभिव्यक्ति में विकल्प लेबल के बाद फ़िल्टर का अनुवाद करें:

<select ng-model="selectedOpt" 
     ng-options="opt.val as opt.translationKey | translate for opt in optionsList"> 
</select> 

आशा करता हूँ की ये काम करेगा!

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