【问题标题】:Can I Pass Dynamic Value When Calling Flutter Widget Like In React?在 React 中调用 Flutter 小部件时可以传递动态值吗?
【发布时间】:2026-01-22 19:20:06
【问题描述】:

我的背景是 javascript 开发人员,在 React/React Native 中,您可以动态地将 props 传递给组件,无论您是否在该组件中使用它。您还可以解构该小部件中传递的道具。

例如

<InputComponent
   disabled
   ...someOtherAttribute
   dynamicProps={{
      color: 'red',
      isNeedValidation: true,
   }}
/>

然后让我们在InputComponent 中说您可以执行类似...

const InputComponent = (props) => {
    return (
         <Input 
             disabled={props.disabled}
             {...props.dynamicProps}
         />
    )
}

我很好奇是否有任何方法可以在颤振中做同样的方法?还是对小部件的构造函数中定义的内容严格?

如果可以,怎么做?

【问题讨论】:

  • 是的,为什么不......
  • 你知道怎么做吗? @OMiShah
  • 如果你真的想要,你可以随时传递Map&lt;String, dynamic&gt;。当然,这将放弃静态类型检查。

标签: flutter dart


【解决方案1】:

Flutter 中的任何小部件都只是一个 Dart 类。并且可以声明任何属性并将其传递给 Dart 类。例如,您可以:

class MyWidget extends StatelessWidget {
  final Map<String, dynamic> props;

  MyWidget({this.props});

  void readProps() {
    print(this.props);
  }
}

【讨论】: