4

クライアント側のコーディング用のDart Route ライブラリの例を 調べているときに、このスニペットに出会いました。

 var router = new Router()
    ..addHandler(urls.one, showOne)
    ..addHandler(urls.two, showTwo)
    ..addHandler(urls.home, (_) => null)
    ..listen();

私の質問は、どのように機能し(_) => nullますか? null値を返す関数を指定しているようですが、どういう(_)意味ですか?

4

3 に答える 3

7

(_)は、1 つのパラメーターを持つ関数であることを意味しますが、そのパラメーターは気にしないため、単に名前が付けられてい_ます。と書くこともできます(ignoreMe) => null。ここで重要なことは、1 つのパラメーターを受け入れる関数が必要であるということです。あなたがそれをどうするかはあなた次第です。

于 2013-11-11T13:37:31.740 に答える
7

(_) => null意味:という名前の 1 つのパラメーターを取り_、 を返すnull関数。のショートカットと見なすことができます(iDontCareVariable) => null

パラメータのない同様の関数は() => null.

より多くのパラメーターを持つ同様の関数は(_, __, ___) => null.

_言語レベルで定義された特別な構文ではないことに注意してください。関数本体内で使用できる単なる変数名です。例: (_) => _.

于 2013-11-11T14:18:19.267 に答える