背景:私はちょうど小さなテストとして、私はunixの 'tr'プログラムを実装しようとすることを決めたので、ダーツで遊んで始めました。私はコンソールで簡単なフレームワークを作成するためにステージハンドを使用しました。これは、(少なくとも、実行中の「ダーツmain.dart -h」に成功したヘルプ項目を出力します)作品、今このダーツコードスニペットで私のメソッドがカスケードしないのはなぜですか?
import 'dart:io';
import 'package:args/args.dart';
import 'package:translate/translate.dart' as translate;
ArgResults input;
main(List<String> arguments) {
var parser = new ArgParser();
parser.addFlag("complement",
help: "complement the strings",
negatable: false,
abbr: "c");
parser.addFlag("delete",
help: "delete the selected strings",
negatable: false,
abbr: "d");
parser.addFlag("help",
help: "display this help screen",
negatable: false,
abbr: "h",
callback: (help) => print(parser.usage));
parser.addFlag("squeeze-repeats",
help: "squeeze repeats",
negatable: false,
abbr: "s");
parser.addFlag("truncate",
help: "truncate strings",
negatable: false,
abbr: "t");
parser.addFlag("version",
help: "display version info",
negatable: false,
abbr: "v");
input = parser.parse(arguments);
}
:私がした最初のものは、引数のパッケージと、CLIオプションを取得することでした。メソッドのカスケーディングを利用しようとすると、私の問題が始まります。以下のコードは、エラーを与える:
エラー:行13 POS 7:「パーサ」の初期化子は、質問は、私が間違って何をやっているされて、それ自体に
import 'dart:io';
import 'package:args/args.dart';
import 'package:translate/translate.dart' as translate;
ArgResults input;
main(List<String> arguments) {
var parser = new ArgParser()
..addFlag("complement",
help: "complement the strings",
negatable: false,
abbr: "c")
..addFlag("delete",
help: "delete the selected strings",
negatable: false,
abbr: "d")
..addFlag("help",
help: "display this help screen",
negatable: false,
abbr: "h",
callback: (help) => print(parser.usage))
..addFlag("squeeze-repeats",
help: "squeeze repeats",
negatable: false,
abbr: "s")
..addFlag("truncate",
help: "truncate strings",
negatable: false,
abbr: "t")
..addFlag("version",
help: "display version info",
negatable: false,
abbr: "v");
input = parser.parse(arguments);
}
を参照しないかもしれませんか?それは私が見ることができない構文エラーのように簡単ですか?それは価値があるため、私はideとしてbash/viを使用しています。私はWebstormの使用を検討しましたが、フリーではないので私はできません。どんな助けがあっても私は感謝しています。