小编And*_*ira的帖子

动态访问Dart/Flutter中类的属性

我正在尝试使用动态变量访问 Dart 类中的属性。在 JavaScript 中,我可以使用括号表示法并执行以下操作:

var icons = {
  mars: "male",
  venus: "female"
};

getIcon = genderIcon => {
  return icons[genderIcon];
};

console.log(getIcon("mars")); // Prints "male"
Run Code Online (Sandbox Code Playgroud)

我可以在 Dart 中做类似的事情吗?

我在 Dart 中尝试了两种方法,但遇到了两个我不太理解的不同错误:

import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart';

class GenderSelection extends StatelessWidget {
  final IconData genderIcon;

  GenderSelection({@required this.genderIcon});

  @override
  Widget build(BuildContext context) {
    return Container(
      child: Icon(
        // Using dot notation...
        FontAwesomeIcons.genderIcon // error: The getter 'genderIcon' isn't defined for the class 'FontAwesomeIcons'. (undefined_getter at [bmi_calculator] lib/input_page.dart:71)

        // ...or using bracket notation …
Run Code Online (Sandbox Code Playgroud)

dart flutter

7
推荐指数
1
解决办法
7762
查看次数

标签 统计

dart ×1

flutter ×1