我正在创建一些类,但遇到了这个问题:来自超类型的静态成员必须由定义类型的名称限定。 帖子(Documnet文档)->未来
我的主旨是这些
UserApi
import '../api-helper.dart';
import '../../graphql/documents/login.dart';
import 'dart:async';
class UserAPI extends APIHelper {
static Future<dynamic> login(account) async {
return await post(new Login('name', 'email', 'token', 'refreshToken', 'createdAt', 'expiresAt', false));
}
}
APIHelper
import 'package:graphql_flutter/graphql_flutter.dart' show Client, InMemoryCache;
import '../graphql/document.dart';
import '../graphql/graphql-helper.dart';
import 'dart:async';
class APIHelper {
static const GRAPHQL_URL = 'https://heat-map-api.herokuapp.com/graphql';
static final _client = Client(
endPoint: GRAPHQL_URL,
cache: new InMemoryCache(),
);
static Future<dynamic> post(Document document) async {
return await _client.query(query: GraphQLHelper.getBodyMutation(document), variables: GraphQLHelper.getVariables(document));
}
}
该如何解决此问题?我还没有编译项目,但是吓到我了。
答案 0 :(得分:2)
只能在类的外部使用静态成员,但必须在类名前面加上前缀。
像这样的助手更好的设计是使用顶级成员。请参见AVOID defining a class that contains only static members中的Effective Dart 规则。