fish-redux基础使用指南

#####在介绍使用方法之前,先介绍一个快捷创建fish_redux目录的插件
FishReduxTemplate快捷创建fish_redux目录

######相关文章

######核心思想:

  • 通过view视图中按钮点击发送一个一个信号量(dispatch)
  • effect注册监听信号量,并做出处理

######实现效果:

  • 点击按钮返回上层控制器
    Untitled4.gif
  • 点击改变文字
    Untitled4.gif

######代码部分
action.dart

import 'package:fish_redux/fish_redux.dart';

//TODO replace with your own action
enum BasicAction { action }

class BasicActionCreator {
  static Action onAction() {
    return const Action(BasicAction.action);
  }
}

effect.dart

import 'package:fish_redux/fish_redux.dart';
import 'action.dart';
import 'state.dart';
import 'package:my_flutter/Expand/Router/Routers.dart';

Effect<BasicState> buildEffect() {
  return combineEffects(<Object, Effect<BasicState>>{
    BasicAction.action: _onAction,//注册监听的信号,实现对应方法
  });
}
///逻辑处理
void _onAction(Action action, Context<BasicState> ctx) {
  print('接收到信号名称为:action 并做出处理');
  Routers.pop(ctx.context);
}

view.dart

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

import 'action.dart';
import 'state.dart';

Widget buildView(BasicState state, Dispatch dispatch, ViewService viewService) {
  return Scaffold(
    appBar: AppBar(
      title: Text('fish_redux_basic'),
    ),
    floatingActionButton: FloatingActionButton(
      child: IconButton(
        icon: Icon(Icons.add_circle_outline),
        onPressed: () {
          print('发送信号量');
          dispatch(BasicActionCreator.onAction());
        },
      ),
    ),
  );
}

#####Demo地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值