当我阅读源代码时,我经常看到这样的东西(来自TextField(:
/// {@macro flutter.widgets.editableText.keyboardType}
final TextInputType keyboardType;
@macro
是什么意思?
我找到了答案,所以我把它作为一个自我回答问答发布在下面;A.
@macro
是插入一些在其他地方编写的dartdoc文档的一种方法。这样就不会有重复的文档需要维护。
@macro
后面的字符串是模板的名称,其中包括要插入的文档。因此,在TextField示例中:
/// {@macro flutter.widgets.editableText.keyboardType}
final TextInputType keyboardType;
模板名称为CCD_ 4。如果你转到EditableText的源代码,你会发现带有文档文本的模板:
/// {@template flutter.widgets.editableText.keyboardType}
/// The type of keyboard to use for editing the text.
///
/// Defaults to [TextInputType.text] if [maxLines] is one and
/// [TextInputType.multiline] otherwise.
/// {@endtemplate}
final TextInputType keyboardType;
注释@template
启动模板,后面跟着它的名称。@endtemplate
完成。
当您查看EditableText.keyboardType
和TextField.keyboardType
的文档时,您可以看到它们完全相同:
- https://api.flutter.dev/flutter/widgets/EditableText/keyboardType.html
- https://api.flutter.dev/flutter/material/TextField/keyboardType.html
阅读dartdoc文档中的更多信息。