Флаттер - Как получить контекст из MockRepository? - PullRequest
0 голосов
/ 15 октября 2018

Я делаю пример с флаттером и наткнулся на вопросительный знак.В моем проекте я реализовал внедрение зависимостей, и у меня есть два класса для получения данных, один для производства и тестирования с локальными данными (Mock).Проблема в том, что локальные данные, которые я сохранил в файле json, и когда я реализую функциональность «fetchProducts», я не знаю, как получить Context для загрузки 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 голосов
/ 15 октября 2018

Вместо этого вы можете использовать rootBundle, которое является значением по умолчанию DefaultAssetBundle

rootBundle.loadString("mockdata/data.json");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...