[英]Localize an Angular 11 library
Angular i18n 文檔清楚地說明了本地化應用程序,但沒有說明庫。
ng add @angular/localize
不修改angular.json
,並且ng extract-i18n
失敗並出現以下錯誤:
angular.json
中缺少 extract-i18n
An unhandled exception occurred: No projects support the 'extract-i18n' target.
在angular.json
中添加extract-i18n
目標
Data path "" should have required property 'browserTarget'.
如何為我的庫生成messages.xlf
文件?
截至 2021 年 3 月, 尚不支持此功能。
但是有一個解決方法:
首先安裝@angular/localize
,就像安裝常規應用程序一樣:
ng add @angular/localize
在package.json
中,添加以下腳本以掃描構建的文件以查找本地化字符串:
"i18n": "localize-extract -r . -s \"dist/efp-widgets/fesm2015/*.js\" -f xlf -o messages.xlf"
注意localize-extract
來自@angular/localize
;
如果在 TypeScript 中使用$localize
,不要忘記在public-api.ts
中注冊@angular/localize/init
:
import '@angular/localize/init'
然后將i18n
腳本添加到package.json
中的主構建腳本中:
"build": "ng build && npm run i18n"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.