导入 Http/http.dart 包时出错
error in importing Http/http.dart package
我用适当的缩进更新了依赖项,然后 flutter pub get 然后在代码中导入它。也尝试重新启动我的 ide。当我尝试构建应用程序时弹出错误。
错误:
Unable to find modules for some sources, this is usually the result of
either a bad import, a missing dependency in a package (or possibly a
dev_dependency needs to move to a real dependency), or a build failure
(if importing a generated file).
Please check the following imports:
import 'package:http/http.dart' as http;
from myapp|lib/myapp.dart
at 83:1
代码:
import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;
import 'dart:convert';
import 'dart:async';
void main(){
runApp(MaterialApp(
home: HomePage(),
));
}
class HomePage extends StatefulWidget {
@override
_HomePageState createState() => _HomePageState();
}
class _HomePageState extends State<HomePage> {
Future getData() async{
http.Response response = await http.get("http://dummy.restapiexample.com/api/v1/employees");
debugPrint(response.body);
}
@override
void initState() {
super.initState();
getData();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("Employees"),
backgroundColor: Colors.green,
),
);
}
}
pubspec.yaml
name: myapp
description: A new Flutter project.
# The following defines the version and build number for your application.
# A version number is three numbers separated by dots, like 1.2.43
# followed by an optional build number separated by a +.
# Both the version and the builder number may be overridden in flutter
# build by specifying --build-name and --build-number, respectively.
# In Android, build-name is used as versionName while build-number used as versionCode.
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 1.0.0+1
environment:
sdk: ">=2.1.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
http: ^0.12.0+4
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2
dev_dependencies:
flutter_test:
sdk: flutter
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec
# The following section is specific to Flutter.
flutter:
# The following line ensures that the Material Icons font is
# included with your application, so that you can use the icons in
# the material Icons class.
uses-material-design: true
# To add assets to your application, add an assets section, like this:
# assets:
# - images/a_dot_burr.jpeg
# - images/a_dot_ham.jpeg
# An image asset can refer to one or more resolution-specific "variants", see
# https://flutter.dev/assets-and-images/#resolution-aware.
# For details regarding adding assets from package dependencies, see
# https://flutter.dev/assets-and-images/#from-packages
# To add custom fonts to your application, add a fonts section here,
# in this "flutter" section. Each entry in this list should have a
# "family" key with the font family name, and a "fonts" key with a
# list giving the asset and other descriptors for the font. For
# example:
fonts:
- family: IndieFlower
fonts:
- asset: fonts/IndieFlower-Regular.ttf
#
# For details regarding fonts from package dependencies,
# see https://flutter.dev/custom-fonts/#from-packages
您是否尝试过重新启动 IDE?
https://flutter.dev/docs/development/packages-and-plugins/using-packages
Stop and restart the app, if necessary If the package brings
platform-specific code (Java/Kotlin for Android, Swift/Objective-C for
iOS), that code must be built into your app. Hot reload and hot
restart only update the Dart code, so a full restart of the app might
be required to avoid errors like MissingPluginException when using the
package.
我看到你的 Flutter
版本是 1.13.6。
我也遇到了这个版本的一些奇怪问题,但是当我切换到 dev
频道时,所有问题都消失了。
也试试这个:
flutter channel dev
flutter upgrade
不要使用 vscode 运行&debug 功能,使用此命令 运行 flutter 运行 -d web-server --web-hostname= --web -port= --profile -v ,将 "ipaddress" 和 "freeport" 替换为您的系统输入
我用适当的缩进更新了依赖项,然后 flutter pub get 然后在代码中导入它。也尝试重新启动我的 ide。当我尝试构建应用程序时弹出错误。
错误:
Unable to find modules for some sources, this is usually the result of either a bad import, a missing dependency in a package (or possibly a dev_dependency needs to move to a real dependency), or a build failure (if importing a generated file).
Please check the following imports:
import 'package:http/http.dart' as http;
from myapp|lib/myapp.dart at 83:1
代码:
import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;
import 'dart:convert';
import 'dart:async';
void main(){
runApp(MaterialApp(
home: HomePage(),
));
}
class HomePage extends StatefulWidget {
@override
_HomePageState createState() => _HomePageState();
}
class _HomePageState extends State<HomePage> {
Future getData() async{
http.Response response = await http.get("http://dummy.restapiexample.com/api/v1/employees");
debugPrint(response.body);
}
@override
void initState() {
super.initState();
getData();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("Employees"),
backgroundColor: Colors.green,
),
);
}
}
pubspec.yaml
name: myapp
description: A new Flutter project.
# The following defines the version and build number for your application.
# A version number is three numbers separated by dots, like 1.2.43
# followed by an optional build number separated by a +.
# Both the version and the builder number may be overridden in flutter
# build by specifying --build-name and --build-number, respectively.
# In Android, build-name is used as versionName while build-number used as versionCode.
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 1.0.0+1
environment:
sdk: ">=2.1.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
http: ^0.12.0+4
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2
dev_dependencies:
flutter_test:
sdk: flutter
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec
# The following section is specific to Flutter.
flutter:
# The following line ensures that the Material Icons font is
# included with your application, so that you can use the icons in
# the material Icons class.
uses-material-design: true
# To add assets to your application, add an assets section, like this:
# assets:
# - images/a_dot_burr.jpeg
# - images/a_dot_ham.jpeg
# An image asset can refer to one or more resolution-specific "variants", see
# https://flutter.dev/assets-and-images/#resolution-aware.
# For details regarding adding assets from package dependencies, see
# https://flutter.dev/assets-and-images/#from-packages
# To add custom fonts to your application, add a fonts section here,
# in this "flutter" section. Each entry in this list should have a
# "family" key with the font family name, and a "fonts" key with a
# list giving the asset and other descriptors for the font. For
# example:
fonts:
- family: IndieFlower
fonts:
- asset: fonts/IndieFlower-Regular.ttf
#
# For details regarding fonts from package dependencies,
# see https://flutter.dev/custom-fonts/#from-packages
您是否尝试过重新启动 IDE?
https://flutter.dev/docs/development/packages-and-plugins/using-packages
Stop and restart the app, if necessary If the package brings platform-specific code (Java/Kotlin for Android, Swift/Objective-C for iOS), that code must be built into your app. Hot reload and hot restart only update the Dart code, so a full restart of the app might be required to avoid errors like MissingPluginException when using the package.
我看到你的 Flutter
版本是 1.13.6。
我也遇到了这个版本的一些奇怪问题,但是当我切换到 dev
频道时,所有问题都消失了。
也试试这个:
flutter channel dev
flutter upgrade
不要使用 vscode 运行&debug 功能,使用此命令 运行 flutter 运行 -d web-server --web-hostname= --web -port= --profile -v ,将 "ipaddress" 和 "freeport" 替换为您的系统输入