小编Ike*_*ira的帖子

使用块模式时缓存数据

我想在我的应用程序中实现缓存,以便数据仅加载一次,然后每次重新加载页面时,不必再次获取数据

下面的代码是一个页面块。

import 'dart:async';
import 'dart:collection';

import 'package:eightoeight/eightoeight.dart';
import 'package:rxdart/rxdart.dart';

class AlbumBloc {
  DatabaseClient db;

  Stream<List<AudioTrack>> get albums => _albumSubject.stream;

  final _albumSubject = BehaviorSubject<UnmodifiableListView<AudioTrack>>();

  final modeController = StreamController<int>();

  Sink<int> get mode => modeController.sink;

  var _albums = <AudioTrack>[];

  AlbumBloc() {
    create();
  }

  void create() async {
    if (db == null) {
      this.db = new DatabaseClient();
      await this.db.create();
    }

    modeController.add(0);
    modeController.stream.listen(onData);
  }

  void onData(int num) {
    if (num == null) {
      _updateSongs(0).then((_) {
        _albumSubject.add(UnmodifiableListView(_albums));
      });
    } else if (num == 1) { …
Run Code Online (Sandbox Code Playgroud)

dart flutter bloc

1
推荐指数
1
解决办法
2592
查看次数

带计数的 Clojure 循环

我是 Clojure 的新手,会帮助处理一些代码。我有一个接受向量的函数,我想遍历向量并获取索引“i”处的值和“i”本身的值。'i' 是在循环中递增的值。

我在Clojure的文档检查“为”在和写了下面的代码。

(for [i some-vector]
      (print (get-intersec i (.length some-vector) loop-count)))
Run Code Online (Sandbox Code Playgroud)

循环计数变量应该是循环计数。

我也检查了循环,但它似乎不是一个可行的解决方案。有人可以帮助我使用我可以使用的 clojure 函数,或者帮助我编写可以执行此操作的宏或函数。

谢谢你。

Ps:为了解决我的问题,我使用自己的计数器,但想要更好的解决方案。

clojure

0
推荐指数
1
解决办法
754
查看次数

标签 统计

bloc ×1

clojure ×1

dart ×1

flutter ×1