【发布时间】:2020-07-05 03:32:22
【问题描述】:
我在运行 Flutter 时收到以下错误。 错误似乎来自包dio
编译器消息:
../flutter/.pub-cache/hosted/pub.dartlang.org/dio-2.2.2/lib/src/dio_http_headers.dart:55:8: Error: The method 'DioHttpHeaders.add' has fewer named
arguments than those of overridden method 'HttpHeaders.add'.
void add(String name, value) {
^
org-dartlang-sdk:///third_party/dart/sdk/lib/_http/http.dart:694:8: Context: This is the overridden method ('add').
void add(String name, Object value,
^
../flutter/.pub-cache/hosted/pub.dartlang.org/dio-2.2.2/lib/src/dio_http_headers.dart:70:8: Error: The method 'DioHttpHeaders.set' has fewer named
arguments than those of overridden method 'HttpHeaders.set'.
void set(String name, Object value) {
^
org-dartlang-sdk:///third_party/dart/sdk/lib/_http/http.dart:703:8: Context: This is the overridden method ('set').
void set(String name, Object value,
这就是我想要实现的
import 'package:flutter/material.dart';
import 'package:flutter_rave/flutter_rave.dart';
class DepositPage extends StatefulWidget {
DepositPage({Key key}) : super(key: key);
@override
_DepositPageState createState() => _DepositPageState();
}
class _DepositPageState extends State<DepositPage> {
@override
Widget build(BuildContext context) {
return Center(
child: Builder(
builder: (context) => SingleChildScrollView(
child: Padding(
padding: const EdgeInsets.only(left: 10.0, right: 10),
child: InkWell(
onTap: () => _pay(context),
child: Card(
color: Colors.orangeAccent,
elevation: 15,
child: Container(
height: 250,
width: MediaQuery.of(context).size.width,
child: Center(
child: Row(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text(
"Card Payment",
style: TextStyle(
color: Colors.black,
fontSize: 20,
fontWeight: FontWeight.bold),
),
SizedBox(
width: 10,
),
Icon(
Icons.payment,
color: Colors.black,
size: 30,
)
],
),
),
),
),
),
),
),
));
}
_pay(BuildContext context) {
final snackBar_onFailure = SnackBar(content: Text('Transaction failed'));
final snackBar_onClosed = SnackBar(content: Text('Transaction closed'));
final _rave = RaveCardPayment(
isDemo: true,
encKey: "i have to hide this",
publicKey: "i have to hide this too",
transactionRef: "This as well",
amount: 100,
email: "demo1@example.com",
onSuccess: (response) {
print("$response");
print("Transaction Successful");
if (mounted) {
Scaffold.of(context).showSnackBar(
SnackBar(
content: Text("Transaction Sucessful!"),
backgroundColor: Colors.green,
duration: Duration(
seconds: 5,
),
),
);
}
},
onFailure: (err) {
print("$err");
print("Transaction failed");
Scaffold.of(context).showSnackBar(snackBar_onFailure);
},
onClosed: () {
print("Transaction closed");
Scaffold.of(context).showSnackBar(snackBar_onClosed);
},
context: context,
);
_rave.process();
}
}
我试图在我的应用中使用颤振波实现支付。 目前我正在使用 Dart 2.8.4 和 Flutter 1.17.5 我已经跑干净了,但这没有做任何事情 将不胜感激一些帮助。谢谢
【问题讨论】: