Flutter-如何从MockRepository获取上下文?

时间:2018-10-15 19:01:24

标签: flutter

我正在举一个例子,我碰到一个问号。在我的项目中,我实现了依赖注入,并且有两个类来获取数据,一个用于生产和使用本地数据进行测试(模拟)。问题是我存储在json文件中的本地数据,并且当我实现“ fetchProducts”功能时,我不知道如何获取上下文来加载json……希望您能对我有所帮助,谢谢。 >

import 'dart:async';
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:graphqllapp/data/product_data.dart';
import 'package:path/path.dart';

class MockProductRepository implements ProductRepository {

  @override
  Future<List<Product>> fetchProducts() async {
    // TODO: implement fetchUsers
    String data = await 
    DefaultAssetBundle.of(????).loadString("mockdata/data.json");
    var jsonResult = json.decode(data);
    return new Future.value(products);
  }
}

1 个答案:

答案 0 :(得分:0)

您可以改用rootBundle,它是DefaultAssetBundle的默认值

rootBundle.loadString("mockdata/data.json");