I use a custom adapter when I instantiate Dio. But when I run my app in chrome, I see error in console and nothing is shown.
Here is the complete code:
import 'package:flutter/material.dart';
import 'package:dio/dio.dart';
import 'package:dio/browser.dart';
class CustomBrowserHttpClientAdapter extends BrowserHttpClientAdapter {
CustomBrowserHttpClientAdapter() {
withCredentials = true;
}
}
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: HomePage(),
);
}
}
class HomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
final Dio dio = Dio()..httpClientAdapter = CustomBrowserHttpClientAdapter();
return Scaffold(
appBar: AppBar(title: Text('Dio with Custom Adapter')),
body: Center(
child: ElevatedButton(
onPressed: () async {
try {
final response = await dio.get('');
print(response.data);
} catch (e) {
print('Error: $e');
}
},
child: Text('Make Request'),
),
),
);
}
}
Here is the console output:
Uncaught TypeError: Class extends value undefined is not a constructor or null
at load__packages__didgah__main_test_dart (main_test.dart.lib.js:128:13)
at Object.execCb (require.js:1696:33)
at Module.check (require.js:883:51)
at Module.<anonymous> (require.js:1139:34)
at require.js:134:23
at require.js:1189:21
at each (require.js:59:31)
at Module.emit (require.js:1188:17)
at Module.check (require.js:938:30)
at Module.<anonymous> (require.js:1139:34)
at require.js:134:23
at require.js:1189:21
at each (require.js:59:31)
at Module.emit (require.js:1188:17)
at Module.check (require.js:938:30)
at Module.<anonymous> (require.js:1139:34)
at require.js:134:23
at require.js:1189:21
at each (require.js:59:31)
at Module.emit (require.js:1188:17)
at Module.check (require.js:938:30)
at Module.<anonymous> (require.js:1139:34)
at require.js:134:23
at require.js:1189:21
at each (require.js:59:31)
at Module.emit (require.js:1188:17)
at Module.check (require.js:938:30)
at Module.<anonymous> (require.js:1139:34)
at require.js:134:23
at require.js:1189:21
at each (require.js:59:31)
at Module.emit (require.js:1188:17)
at Module.check (require.js:938:30)
at Module.<anonymous> (require.js:1139:34)
at require.js:134:23
at require.js:1189:21
at each (require.js:59:31)
at Module.emit (require.js:1188:17)
at Module.check (require.js:938:30)
at Module.<anonymous> (require.js:1139:34)
at require.js:134:23
at require.js:1189:21
at each (require.js:59:31)
at Module.emit (require.js:1188:17)
at Module.check (require.js:938:30)
at Module.enable (require.js:1176:22)
at Module.init (require.js:788:26)
at callGetModule (require.js:1203:63)
at ObjectpleteLoad (require.js:1590:21)
at HTMLScriptElement.onScriptLoad (require.js:1717:29)```