GetView源码:
abstract class GetView<T> extends StatelessWidget { const GetView({Key? key}) : super(key: key); final String? tag = null; T get controller => GetInstance().find<T>(tag: tag)!; @override Widget build(BuildContext context); }
GetView使用
class CountController extends GetxController { var count = 0.obs; void increment() { count++; print(count); } } class GetViewAndGetWidgetExample extends GetView<CountController> { @override Widget build(BuildContext context) { Get.put(CountController()); // Get.create(() => CountController()); return Scaffold( appBar: AppBar( title: Text("GetX GetView"), ), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center, children: [ Obx(() => Text( "count的值为: ${controller?.count}", style: TextStyle( color: Colors.red, fontSize: 30 ), )), SizedBox(height: 20,), ElevatedButton( onPressed: () { controller.increment(); }, child: Text("点我加1")) ], ), ), ); } }