dart - Using Dart Intl how can I initialize multiple libraries?
问题描述
Using intl package how can I initialize multiple libraries. For example I have some translation on lib1
and other on lib2
, I would like to initialize both translations so they can be used in my code. Until the moment I have this:
import 'package:lib1/_l10n/messages_all.dart' as lib1;
import 'package:lib2/_l10n/messages_all.dart' as lib2;
import 'package:intl/intl.dart';
import 'package:mylib/_l10n/messages_all.dart' as mylib;
main() {
intl.defaultLocle = 'es';
await lib1.initializeMessages('es');
await lib2.initializeMessages('es');
await mylib.initializeMessages('es');
print(lib1.helloMessage());
print(lib2.hiMessage());
print(mylib.whatUpMessage());
}
It only translate lib1.helloMessage()
since is the first one, the rest of message keep being shown in english.
解决方案
这现在行不通。您必须生成一个组合库并使用它。
推荐阅读
- php - 在 PHPSpreadsheet 导入中跳过第一行
- django - 在 django 请求中修改 body 的值
- reactjs - 材质 UI 手风琴摘要
- reactjs - Redux onClick 操作未从组件触发,没有错误或控制台错误
- octave - 如何在 Ocatve 中制作具有多个功能的函数文件
- python - 在没有系统管理权限的远程服务器上获取 vim
- javascript - 如何使用javascript更改关键帧值“从-到”onclick
- regex - 获取两个字符之间的数字 - 打字稿
- node.js - NodeJS、Express 和 ejs;为什么测试失败,但视图有效?
- java - Spring事务同步不起作用(TransactionalEventListener)