body method
Defines the actual body code. path
is passed relative to lib
, baseName
is the filename, and className
is the filename converted to Pascal case.
実際の本体コードを定義します。path
にlib
からの相対パス、baseName
にファイル名が渡され、className
にファイル名をパスカルケースに変換した値が渡されます。
Implementation
@override
String body(String path, String baseName, String className) {
return """
/// Controller.
@Controller(autoDisposeWhenUnreferenced: true)
class ${className}Controller extends ChangeNotifier {
${className}Controller(
// TODO: Define some arguments.
\${1}
);
// TODO: Define fields and processes.
\${2}
/// Query for ${className}Controller.
///
/// ```dart
/// appRef.controller(${className}Controller.query(parameters)); // Get from application scope.
/// ref.app.controller(${className}Controller.query(parameters)); // Watch at application scope.
/// ref.page.controller(${className}Controller.query(parameters)); // Watch at page scope.
/// ```
static const query = _\$${className}ControllerQuery();
}
""";
}