gpt4 book ai didi

flutter - 常量创建的参数必须是Flutter上的常量表达式

转载 作者:行者123 更新时间:2023-12-03 03:56:22 27 4
gpt4 key购买 nike

我使用了Flavor并定义了两个主要的类。而且我还使用了Chopper。如何设置基于baseUrl的环境?

import 'package:meta/meta.dart';

enum BuildFlavor { production, development }

BuildEnvironment get env => _env;
BuildEnvironment _env;

class BuildEnvironment {
final String ssoBaseUrl;
final BuildFlavor flavor;

BuildEnvironment._init(
{this.ssoBaseUrl,
this.flavor});

static void init(
{@required flavor,
@required ssoBaseUrl}) =>
_env ??= BuildEnvironment._init(
flavor: flavor,
ssoBaseUrl: ssoBaseUrl);
}

main.dev.dart
void main() {
BuildEnvironment.init(
flavor: BuildFlavor.development,
ssoBaseUrl: 'http://15.88.219.20');
assert(env != null);
runApp(MultiProvider(
providers: globalProviders,
child: MyApp(),
));
}

斩波器
@ChopperApi(baseUrl:'${env.ssoBaseUrl}')
abstract class Services extends ChopperService {
static Services create([ChopperClient client]) => _$Services(client);

@Post(path: '/sso-dev/registration')
Future<Response> registerPost(

错误消息

click here to view error message

最佳答案

注释仅需提供const值。由于env是getter属性,因此它不是const。恐怕您将无法通过这种方式指定baseUrl

关于flutter - 常量创建的参数必须是Flutter上的常量表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60945064/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com