flutter - 什么时候应该在 Dart/Flutter 中使用分号?

标签 flutter dart

我是 Dart/Flutter 的初学者并尝试阅读 this但我仍然不明白何时使用分号。为什么我们不在小部件的每个括号的末尾插入分号?

最佳答案

Dart 中有两种语句:简单语句复合语句 .
将分号放在简单语句的末尾
例子:

  • print('hello world');
  • return myValue;
  • var x = 4;

  • 不要将分号放在复合语句的末尾
    复合语句的代码块的范围由大括号 { } 定义.在右大括号后不要使用分号。
    if 语句示例:
    if (x > 2) {
      print(x);
    }
    
    这里print(x)是一个简单的语句,所以它需要一个分号,但 if 语句右大括号不需要分号。
    复合语句的其他示例包括循环、switch 语句和功能 block 。
    不要在列表的项目之间放置分号
    在 Dart 中,列表的项目由逗号分隔,如下所示:
    var myList = [1, 2, 3];
    
    列表的右方括号后面的分号表示语句已完成,但列表项本身使用逗号。
    如果在最后一项后添加逗号,也可以垂直格式化列表,如下所示:
    var myList = [
      1, 
      2, 
      3,
    ];
    
    在 Flutter 布局中,您通常会有遵循相同模式的小部件列表。
    flutter 示例
    看看 Flutter 中的这个例子:
    class MyWidet extends StatelessWidget {
      @override
      Widget build(BuildContext context) {
        return Center(
          child: Container(
            width: 300,
            color: Colors.blue,
            margin: EdgeInsets.all(10),
            padding: EdgeInsets.all(10),
            child:
              Wrap(
                children: [
                  MyWidget(),
                  MyWidget(),
                  MyWidget(),
                  MyWidget(),
                  MyWidget(),
                ],
            ),
          ),
        ); // end of the return statement
      }
    }
    
    请注意以下事项:
  • } 都不是右大括号(对于 MyWidet 类和 build 方法)使用分号。
  • 参数列表(划分如 widthcolorchild 等)是列表。他们使用逗号。
  • Wrap 的子代也在列表中。他们使用逗号。
  • 虽然冗长而分散,但这里只有一个简单的声明,return语句,所以只有一个分号。
  • 关于flutter - 什么时候应该在 Dart/Flutter 中使用分号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62369028/

    相关文章:

    flutter - Flutter 如何处理嵌套的 InkWell?

    android - 为什么ImagePicker无法选取多张图片

    android - Flutter redux StoreConnector vs StoreBuilder

    dart - 如何获取 Dart Aqueduct 服务器中的请求 header

    flutter - 在 Flutter 中,当从屏幕 B 弹回屏幕 A 时调用哪个方法

    mysql - Flutter-将列表转换为json并存储在MYSQL数据库中

    flutter - flutter_map通过BLoC使用 map Controller 移动相机

    在文本小部件内 flutter if 语句而不使用 else

    java - 如何在flutter中添加Java依赖关系?

    dart - Flutter 在 `flutter` 命令上失败