1

我在我的項目中使用angular-translate。 我有我的觀點哪個ID喜歡翻譯,多串像角度翻譯來自同一來源的字符串

<ul> 
<li ng-repeat ="title.value as title in vm.states"> 
</ul> 

vm.states是包含我的項目的所有(除抽象的)狀態的陣列。 有一些國家看起來像

'user.details' (不是抽象的狀態)

'user.details.edit' 和ID喜歡這些字符串翻譯,我有對象的翻譯文件

user: { 
    details: { 
     edit: "Edit User" 
    }, 
    ... 
} 

而不是點id喜歡寫一些文字,這將是user.details翻譯, ,但我不能因爲json不接受兩個同名的屬性。 是否有可能翻譯這些文字與角度翻譯和保持國家的名字?

+0

是不是很清楚什麼問題,但也許如果我明白了試試 var item = user.details.edit? user.details.edit:user.details; – Erez

+0

@Erez Id喜歡翻譯2個字符串,比如'user.details'和'user.details.edit',如何將它們存儲在翻譯.json文件中? – styopdev

回答

2

您不需要將angular-translate引用與狀態名稱關聯。事實上,可重複使用的翻譯最好不要。

你不能做的是有一個記錄user.detailsuser.details.edit

原因是user.details不能同時包含字符串和對象。

解決此問題的一種方法是使用UPPER_CASE作爲包含對象和小寫(或駝峯)屬性名稱的翻譯。您可以使用USER.detailsUSER.DETAILS.edit。那些不相互衝突。

或者你可以做相反的事情,並且有user.DETAILSuser.details.EDIT

+0

感謝您的回覆Martin,我正在研究現有項目,並且很難對狀態進行更改,如果我可以編寫類似'「user」的內容,那很好:{details:{「translation」:「Details」,edit :「編輯」}}' – styopdev

+0

也字謎案的技巧不適合我 – styopdev