无法使用静态访问访问实例成员 'getPopularProductList'
Instance member 'getPopularProductList' can't be accessed using static access
我一直在尝试从下面的文件中调用另一个 dart 文件的方法..但它显示实例成员 'getPopularProductList' 无法使用静态访问进行访问。
进口'package:food_delivery/data/repository/popular_product_repo.dart';
导入 'package:food_delivery/models/product_models.dart';
import 'package:get/get.dart';
class PopularProductController extends GetxController {
final PopularProductRepo popularProductRepo;
PopularProductController({required this.popularProductRepo});
List<dynamic> _popularProductList = [];
List<dynamic> get popularProductList =>_popularProductList;
Future<void> getPopularProductList() async {
Response response = await PopularProductRepo.getPopularProductList();
if (response.statusCode == 200) {
_popularProductList = [];
_popularProductList.addAll(Product.fromJson(response.body).products);
update();
}
else{
}
}
}
方法定义如下..
import 'package:food_delivery/data/api/api_client.dart';
import 'package:get/get.dart';
class PopularProductRepo extends GetxService {
final ApiClient apiClient;popular_product_repo
PopularProductRepo({required this.apiClient});
Future<Response> getPopularProductList() async {
return await apiClient.getData("http://mvs.bslmeiyu.com");
}
}
这是因为 PopularProductRepo.getPopularProductList()
是您访问方法的方式,如果它被定义为静态方法,您想使用 class 的实例来访问该方法,所以改为我们 popularProductRepo.getPopularProductList()
我一直在尝试从下面的文件中调用另一个 dart 文件的方法..但它显示实例成员 'getPopularProductList' 无法使用静态访问进行访问。
进口'package:food_delivery/data/repository/popular_product_repo.dart'; 导入 'package:food_delivery/models/product_models.dart';
import 'package:get/get.dart';
class PopularProductController extends GetxController {
final PopularProductRepo popularProductRepo;
PopularProductController({required this.popularProductRepo});
List<dynamic> _popularProductList = [];
List<dynamic> get popularProductList =>_popularProductList;
Future<void> getPopularProductList() async {
Response response = await PopularProductRepo.getPopularProductList();
if (response.statusCode == 200) {
_popularProductList = [];
_popularProductList.addAll(Product.fromJson(response.body).products);
update();
}
else{
}
}
}
方法定义如下..
import 'package:food_delivery/data/api/api_client.dart';
import 'package:get/get.dart';
class PopularProductRepo extends GetxService {
final ApiClient apiClient;popular_product_repo
PopularProductRepo({required this.apiClient});
Future<Response> getPopularProductList() async {
return await apiClient.getData("http://mvs.bslmeiyu.com");
}
}
这是因为 PopularProductRepo.getPopularProductList()
是您访问方法的方式,如果它被定义为静态方法,您想使用 class 的实例来访问该方法,所以改为我们 popularProductRepo.getPopularProductList()