对于跨平台(iOS、android)项目,我考虑使用 Dart在 Flutter 中使用 UI 编程.
为了直接翻译当前的 Kotlin 代码,我想通过函数名称调用函数。更准确地说,我正在寻找如何编写函数 getFunctionByName 以便以下代码打印“The answer is 42.”?
void function42(String s) {
print(s + " 42.");
}
void main() {
int number = 42;
String calculatedFunctionName = "function" + number.toString();
String calculatedArgument = "The answer is";
Function f = getFunctionByName(calculatedFunctionName);
f(calculatedArgument);
}
我努力实现的目标 works in Kotlin似乎work in Dart ,但是当我在 Flutter 项目中尝试链接的 Dart 代码时,导入
import 'dart:mirrors';
不适合我。有一整个thread about reflection in Flutter ,我的解释是,在撰写本文时,反射在 Flutter 中不起作用。但也许我想做的具体事情有解决方法?
最佳答案
这在 Flutter 中是不可能的。 Flutter 禁用 dart:mirror
以缩小二进制文件。
相反,flutter(现在是 angulardart)使用代码生成作为替代方案。
Dart 带有一个非常强大的代码生成器工具:build
关于android - 从 Flutter 中的函数名获取函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51114663/