che*_*ion 10 android-studio dart-analyzer flutter pubspec flutter-localizations
目前,在 AppLocalizations 上调出 Android Studio 快速修复菜单(Opt/Alt+Enter 键盘快捷键)并不建议导入生成的文件。
AppLocalizations 类位于.dart_tool/flutter_gen/gen_l10n/app_localizations.dart
,这也是一个 Git 忽略的目录。
结果我必须手动输入导入语句。其他 Flutter 类名称通常建议通过“快速修复”菜单导入相关文件。
我期待“快速修复”菜单建议导入生成的 AppLocalizations 文件。当我单击导入建议时,它应该将其与其他导入语句一起插入到文件顶部。
如何让导入建议出现在 AppLocalizations 的“快速修复”菜单中?我是否需要帮助 Dart 分析器“了解”目录中生成的文件.dart_tool
?我可以将生成的文件包含在我的“项目”中,同时仍然 Git 忽略它吗?我是否需要在我的 pubspec 文件中链接到它?
我没有找到自动建议的解决方案。
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
Run Code Online (Sandbox Code Playgroud)
只需手动添加此导入即可。注意:它一开始仍然无法识别AppLocalizations.delegate
,所以我删除了这行代码并重新开始输入。现在它起作用了。
编辑:
由于您需要AppLocalizations
在很多地方导入,对我来说,解决方法是创建一个类来获取该类的实例。
我创建了一个common.dart
带有函数的类:
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
AppLocalizations? getApplocalizations(BuildContext context){
return AppLocalizations.of(context);
}
Run Code Online (Sandbox Code Playgroud)
我从我的小部件中调用翻译,如下所示:
title: Text(getApplocalizations(context)?.pageHomeTitle("Test") ?? ""),
Run Code Online (Sandbox Code Playgroud)
通过这种方式,您可以仅在一个位置手动添加导入。
归档时间: |
|
查看次数: |
1169 次 |
最近记录: |