Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 颤振阵营模式传递的不仅仅是国家?_Flutter_Dart - Fatal编程技术网

Flutter 颤振阵营模式传递的不仅仅是国家?

Flutter 颤振阵营模式传递的不仅仅是国家?,flutter,dart,Flutter,Dart,我读到的是颤振集团模式最适合管理国家。 我认为有必要将显示和业务逻辑划分为不同的区域 尝试从头开始学习颤振/飞镖 我构建了一个listview和每行作为购物卡的单个项目。用户可以在每一行选择百吉饼的种类或口味 第一个问题是如何在屏幕上显示变量的计数?我有cubit/bloc示例代码正在工作。尝试添加简单的测试逻辑,当使用13个面包圈的select间隔时,它会增加1个面包师的计数。我可以在调试器的工作中看到这一点。但是我不能为自己是新手而感到抱歉,因为我不知道如何将这个变量传递到我的视图页面。将集

我读到的是颤振集团模式最适合管理国家。 我认为有必要将显示和业务逻辑划分为不同的区域

尝试从头开始学习颤振/飞镖

我构建了一个listview和每行作为购物卡的单个项目。用户可以在每一行选择百吉饼的种类或口味

第一个问题是如何在屏幕上显示变量的计数?我有cubit/bloc示例代码正在工作。尝试添加简单的测试逻辑,当使用13个面包圈的select间隔时,它会增加1个面包师的计数。我可以在调试器的工作中看到这一点。但是我不能为自己是新手而感到抱歉,因为我不知道如何将这个变量传递到我的视图页面。将集团转交给国家管理层是否正确?或者我应该后退一步,尝试使用inheritabve小部件

在一天结束时只想在屏幕底部显示总共十几个百吉饼的订单

import 'package:bloc/bloc.dart';

/// {@template counter_cubit}
/// A [Cubit] which manages an [int] as its state.
/// {@endtemplate}
class CounterCubit extends Cubit<int> {
  /// {@macro counter_cubit}
  CounterCubit() : super(12);
  int _dozen = 12;

  /// Add 1 to the current state.
  void increment() {
    if (state >= 0) {
      emit(state + 1);
      _dozen = (    state ~/ 13);
       print('dozen:' + '$_dozen');
    }
  }

  /// Subtract 1 from the current state.

  void decrement() {
    if (state > 0) {
      emit(state - 1);
     _dozen = (    state ~/ 13);
      print('dozen:' + '$_dozen');
    }
  }
}

看起来你需要在你的状态中保持不止一个int;一个数,一个打。创建一个单独的类CounterState来表示您的状态并保存这些值,这样您就可以得到以下代码:

import 'package:bloc/bloc.dart';

class CounterState {
  int count;
  int dozen;

  CounterState(this.count, this.dozen);
}

/// {@template counter_cubit}
/// A [Cubit] which manages an [CounterState] as its state.
/// {@endtemplate}
class CounterCubit extends Cubit<CounterState> {
  /// {@macro counter_cubit}
  CounterCubit() : super(CounterState(12,1));

  /// Add 1 to the current state.
  void increment() {
    if (state.count >= 0) {
      final int count = state.count + 1;
      emit(CounterState(count, count ~/ 12));
      print('dozen:' + '${state.dozen}');
    }
  }

  /// Subtract 1 from the current state.

  void decrement() {
    if (state.count > 0) {
      final int count = state.count - 1;
      emit(CounterState(count, count ~/ 12));
      print('dozen:' + '${state.dozen}');
    }
  }
}
然后在您的小部件中,将其作为state.count和state.tide访问,而不仅仅是state。 此解决方案可以改进,但足以让您继续