If a component attribute supports local initialization, a valid, runtime-independent default value should be set for it.
// code-linter.json5
{
"rules": {
"@previewer/mandatory-default-value-for-local-initialization": "warn"
}
} @Builder
function MyBuilderFunction(): void {
}
@Entry
@Component
struct Index {
messageA?: string;
message: string = 'Hello World';
@Provide messageB: string = 'messageB';
@StorageLink('varA') varA: number = 2;
@StorageProp('languageCode') lang: string = 'en';
@LocalStorageLink('PropA') storageLink1: number = 1;
@LocalStorageProp('PropB') storageLink2: number = 2;
@BuilderParam myBuilder: () => void = MyBuilderFunction;
build() {
Row() {
Column() {
Text(this.message)
this.myBuilder()
}
}
}
} @Entry
@Component
struct Index {
@BuilderParam myBuilder: () => void;
build() {
Row() {
Column() {
Text('Hello World')
this.myBuilder()
}
}
}
} plugin:@previewer/recommended plugin:@previewer/all
For details about how to configure Code Linter check rules, see Code Linter.