我正在尝试在基于浏览器的应用程序中使用这个包。当尝试编译到 Chrome 时,我得到这个:
编译器消息:/C:/flutter/.pub-cache/hosted/pub.dartlang.org/whiteboardkit-0.1.8/lib/gesture_whiteboard_controller.dart:63:15:错误:“Point”是从“dart”导入的:数学”和“dart:ui”。..add(Point.fromOffset(位置)); ^^^^^ /C:/flutter/.pub-cache/hosted/pub.dartlang.org/whiteboardkit-0.1.8/lib/gesture_whiteboard_controller.dart:77:39:错误:“点”是从两个“导入” dart:math' 和 'dart:ui'。this.draw.lines.last.points.add(Point.fromOffset(secondPoint));
这似乎是特定于包的,所以我想我的问题是为什么“dart:math”和“dart:ui”之间会发生冲突?
我需要在 AnimatedSwitcher transitionBuilder 中的两个转换之间有短暂的延迟。我尝试了 Future.delayed,但它没有返回小部件。我应该用什么?
AnimatedSwitcher(
duration: Duration(seconds: 1),
transitionBuilder: (
Widget child,
Animation<double> animation,
) {
return SlideTransition(
position: Tween<Offset>(
begin: Offset(0.0, 0.1),
end: Offset(0, 0))
.animate(animation),
child: FadeTransition(
opacity: animation,
child: child,
),
);
},
child: quizStep(quiz, screenWidth),
),
Run Code Online (Sandbox Code Playgroud)
FadeTransition 必须在 SlideTransition 之后执行几秒。
我正在尝试 Flutter Web,刚刚遇到了一个有趣的现象 - 这个现象耗尽了我的业余项目的免费 API 调用津贴,但是嘿嘿:)
当窗口大小发生变化时,futurebuilder 会再次触发并重新加载。这是如预期的那样吗?如果是这样,有办法阻止吗?
FutureBuilder(
future: _fetchMarketData(
'BOO.XLON,BBOX.XLON,DGE.XLON,GROW.XLON,GSK.XLON,IBM,IEM.XLON,NIO,ULVR.XLON'),
builder: (context, snapshot) {
print('Building');
if (snapshot.hasData) {
List<MarketData> md = snapshot.data;
List<MarketData> _boo =
md.where((md) => md.symbol == 'BOO.XLON').toList();
List<MarketData> _dge =
md.where((md) => md.symbol == 'DGE.XLON').toList();
List<MarketData> _grow =
md.where((md) => md.symbol == 'GROW.XLON').toList();
List<MarketData> _gsk =
md.where((md) => md.symbol == 'GSK.XLON').toList();
List<MarketData> _iem =
md.where((md) => md.symbol == 'IEM.XLON').toList();
List<MarketData> _tri =
md.where((md) => md.symbol == 'BBOX.XLON').toList();
List<MarketData> _ibm =
md.where((md) => md.symbol == …Run Code Online (Sandbox Code Playgroud) 我试图在 flutter 中创建动态字段数组,reactive_forms 是最好的选择。但没有我需要使用的 ReactiveFormArray 文档。
做了一些尝试和错误,找到了使用它的方法。下面是答案。
我有一个 ASP.Net Core web api,它接受不记名令牌 (jwt),我在我的 Flutter 中使用 Android 模拟器发送这个令牌,此代码没有任何问题:
final response = await get(url, headers: {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'Bearer $token',
});
Run Code Online (Sandbox Code Playgroud)
但是当我在 Chrome 浏览器中运行它时,api 响应是: 405 Method Not Allowed 。
有什么问题 ?
更新:
根据@anirudh 的评论,我在我的 web Api 中启用了 CROS 并且问题已经改变。现在的响应是:204 No Content
**我花了一晚上的时间尝试裁剪图像,需要一些帮助**
image_cropper: ^1.5.0 # Used to Crop/Rotate Selected images from user's device
Run Code Online (Sandbox Code Playgroud)
///错误
错误:找不到成员:“ImageCropper.cropImage”。最终croppedImage =等待ImageCropper.cropImage(
///图像源
class ImageSourceSheet extends StatelessWidget {
// Constructor
ImageSourceSheet({required this.onImageSelected});
// Callback function to return image file
final Function(File?) onImageSelected;
// ImagePicker instance
final picker = ImagePicker();
Future<void> selectedImage(BuildContext context, File? image) async {
// init i18n
final i18n = AppLocalizations.of(context);
// Check file
if (image != null) {
final croppedImage = await ImageCropper.cropImage(
sourcePath: image.path,
aspectRatioPresets: [CropAspectRatioPreset.square],
maxWidth: 400,
maxHeight: 400,
androidUiSettings: AndroidUiSettings(
toolbarTitle: …Run Code Online (Sandbox Code Playgroud) 我想使用 Google Places api,我正在尝试调用这个 api,但我得到了这个。错误
Error: XMLHttpRequest error.
Run Code Online (Sandbox Code Playgroud)
static Future<List<Result>?> searchPlaces(context, String query) async {
String mapApiKey = "API_KEY";
String _host = 'https://maps.googleapis.com/maps/api/place/textsearch/json';
final url = '$_host?query=$query&key=$mapApiKey';
//
var response = await http.get(Uri.parse(url));
print(response.body);
//
if (response.statusCode == '200') {
GPlacesSearch result = GPlacesSearch.fromJson(jsonDecode(response.body));
return result.results!;
} else
return null;
}
}
Run Code Online (Sandbox Code Playgroud) 我正在开发一个复杂的 Web 应用程序,其中我有时需要从后端 API 获取数据。有时,我需要在 Future Builder 中调用 2 个 future 函数来使用它们的值。然而,它使代码变得混乱,因为对于每个 FutureBuilder,我需要检查它是否有数据并返回小部件。看起来像这样。
return FutureBuilder<object>(
future: func1(),
builder:(context, AsyncSnapshot<object> snapshot1){
if(snapshot1.hasData){
return FutureBuilder<object>(
future: func2(),
builder:(context, AsyncSnapshot<object> snapshot2){
if(snapshot2.hasData){
return widget;
}else{
return CircularProgressIndicator();
}
}
),
}else{
return CircularProgressIndicator();
}
}
);
Run Code Online (Sandbox Code Playgroud)
还有其他更简单的方法吗?我只能使用一个 FutureBuilder,这样我就不必每次都返回小部件,即(CircularProgressIndicator)。谢谢。
flutter flutter-layout flutter-web flutter-bloc flutter-futurebuilder
在 Flutter Web 稳定后,我尝试按照文档中给出的说明将我的 Flutter Mobile 应用程序转换为 Flutter Web。一切都很好,但这里的问题是 Web 上的文本不可选择!我刚刚通过执行几个命令将 Flutter 移动应用程序转换为 Web,并且对 Flutter Web 或其幕后工作方式一无所知!
我想在像 trello 这样的 flutter 中创建一个 web ui,因为我想要一个水平主滚动和一个垂直辅助滚动,但我无法在列中垂直滚动我附加了我想要创建的内容和我的代码,如果你仍然不明白请告诉我
\n\n这是我的代码:-
\n\nclass PlaningWeekScreenWeb extends StatelessWidget {\n const PlaningWeekScreenWeb({Key? key}) : super(key: key);\n\n // Use this for set width of card and row in list\n final double cardWidth = 180.0;\n @override\n Widget build(BuildContext context) {\n return Row(\n children: [\n Expanded(child: _getSideMenu()),\n Container(\n height: Get.height,\n width: 1,\n color: scrollBarColor,\n ),\n Expanded(\n child: _getMainScreen(),\n flex: 6,\n ),\n ],\n );\n }\n\n Widget _getMainScreen() {\n return SingleChildScrollView(\n scrollDirection: Axis.horizontal,\n child: ListView.builder(\n itemCount: 4,\n shrinkWrap: true,\n …Run Code Online (Sandbox Code Playgroud)