微店的Flutter混合开发组件化与工程化架构
在Flutter混合开发中,我们可以将微店的一些常用组件或功能抽象出来,形成一套组件库供多个项目复用。以下是一个简化的例子,展示了如何在Flutter中创建一个组件化的工程结构:
import 'package:flutter/material.dart';
// 自定义的Stateless组件
class CustomButton extends StatelessWidget {
final String label;
final VoidCallback onTap;
const CustomButton({Key key, this.label, this.onTap}) : super(key: key);
@override
Widget build(BuildContext context) {
return RaisedButton(
child: Text(label),
onPressed: onTap,
);
}
}
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('组件化示例'),
),
body: Center(
child: CustomButton(
label: '点击我',
onTap: () => print('按钮被点击'),
),
),
),
);
}
}
在这个例子中,我们创建了一个名为CustomButton
的组件,它继承自StatelessWidget
。这个组件封装了一个带有文本标签和点击事件的按钮。在main
函数中,我们创建了一个应用并使用了这个自定义组件。这样,我们就可以在多个项目中复用这个按钮组件,从而减少重复的代码编写工作。
评论已关闭