我來自 JavaScript,每隔一行都是console.log('Logged!'). 這是如何在 Flutter 中完成的?該顫振檔案顯示有一個log()特點。我試圖在單擊時將按鈕記錄到控制臺,但沒有用。
我將首先顯示代碼片段,然后是錯誤訊息,然后是完整代碼。
import 'dart:developer';
ElevatedButton(
style: style,
onPressed: () => {
log('Clicked!');
},
child: const Text('My Button'),
),
錯誤資訊:
lib/main.dart:45:27: Error: Expected '}' before this.
log('Logged!');
^
還有我的完整代碼:
import 'package:flutter/material.dart';
import 'dart:developer';
void main() => runApp(const HelloWorld());
class HelloWorld extends StatelessWidget {
const HelloWorld({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
const String appTitle = 'MyApp';
return MaterialApp(
title: appTitle,
home: Scaffold(
appBar: AppBar(title: const Text(appTitle)),
body: const FullNameField(),
),
);
}
}
class FullNameField extends StatelessWidget {
const FullNameField({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
final ButtonStyle style = ElevatedButton.styleFrom(textStyle: const TextStyle(fontSize: 20));
return Column(
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
Container(
// alignment: Alignment.center,
padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 16),
child: TextFormField(
decoration: const InputDecoration(
border: UnderlineInputBorder(),
labelText: 'Enter your username',
),
),
),
ElevatedButton(
style: style,
onPressed: () => {
log('Clicked!');
},
child: const Text('My Button'),
),
],
);
}
}
Thanks!
uj5u.com熱心網友回復:
您可以使用 debugPrint
向控制臺列印一條訊息,您可以使用“flutter”工具的“logs”命令(“flutter logs”)訪問該訊息。
onPressed: () => {
debugPrint("Logged!"),
},
另外,您可以使用print()我不推薦的方法。
uj5u.com熱心網友回復:
問題是log('Clicked!');.結尾的分號。當我將分號更改為逗號時,它起作用了。我來自 JavaScript。:-)
ElevatedButton(
style: style,
onPressed: () => {
log('Clicked!'),
},
child: const Text('Get Fortune'),
),
而debugPrint('Clicked!'),和print('Clicked!'),也行。
——
我剛剛發現箭頭函式后必須跟逗號,但如果沒有箭頭函式,則使用分號。
onPressed: () {
log('Clicked!');
},
對比
onPressed: () => {
log('Clicked!'),
},
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/398623.html
上一篇:當我推另一個螢屏時如何在Flutter中正確重用提供者
下一篇:如何在串列中傳遞地圖(飛鏢)
