flutter使用provider简单实现计数器

走远了吗. 提交于 2021-02-06 14:31:37

1,首先在pubspec.yaml里面安装

在这里插入图片描述

2,在同一个页面创建两个widget(或者将这两个widget单独创立dart文件)

import 'package:flutter/material.dart';
import 'dart:async';
import 'package:provider/provider.dart';
import '../../provide/cunter.dart';
class StrictsSelection extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: Column(
          children: [
            Number(),
            MyButton()
          ],
        ),
      ),
    );
  }
}
class Number extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Container(
      margin: EdgeInsets.only(top: 200),
      child: Text("${Provider.of<Counter>(context).value}"),
    );
  }
}
class MyButton extends StatelessWidget {
  int num = 5;
  @override
  Widget build(BuildContext context) {
    return Container(
      child: RaisedButton(
        onPressed: (){
          Provider.of<Counter>(context,listen: false).increment(num);
        },
        child: Text('递增'),
      ),
    );
  }
}
 

3,展示图

在这里插入图片描述此时点击增加的话,就会计数,这是为了实现在系统内共享状态得fluuter插件

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!