飞镖风格指导

时间:2015-03-13 16:28:29

标签: dart

我正在尝试遵循我的飞镖代码的飞镖风格指南,但我对此不确定:

library ch_panel.section_model;

import 'package:ch_padart/models/page.dart';

class Section {

  String icon;
  String title;
  List<Page> pages;

  Section(this.icon, this.title, this.pages);
  Section.fromJson(Map<String, dynamic> json): this(json['icon'], json['title'], parsePages(json['pages']));

  static List<Page> parsePages(List<Map> pageJson) {
    List<Page> itemPages = new List();

    pageJson.forEach((v) {
      itemPages.add(new Page(v['icon'], v['title']));
    });

    return itemPages;
  }
}

样式指南我指的是: https://www.dartlang.org/articles/style-guide/#members

在这种情况下,您可以重新执行此代码作为正确使用样式的示例吗?

1 个答案:

答案 0 :(得分:3)

可以改进的是格式化。 Dartformat自动执行此操作(应集成在DartEditor中)。您也可以从命令行手动运行它。

# install
pub global activate dart_style
# run 
pub global run dartformat -w myfile.dart
# or to format a whole directory incl subdirs
pub global run dartformat -w .
library ch_panel.section_model;

import 'package:ch_padart/models/page.dart';

class Section {
  String icon;
  String title;
  List<Page> pages;

  Section(this.icon, this.title, this.pages);
  Section.fromJson(Map<String, dynamic> json)
      : this(json['icon'], json['title'], parsePages(json['pages']));

  static List<Page> parsePages(List<Map> pageJson) {
    List<Page> itemPages = new List();

    pageJson.forEach((v) {
      itemPages.add(new Page(v['icon'], v['title']));
    });

    return itemPages;
  }
}

还有一个正在进行的linter工作,它检查样式违规(非常早期但已经可以使用)

 # install
 pub global activate -s git git@github.com:dart-lang/linter.git
 # run
 pub global run linter myfile.dart