如果私有成员从未在构造函数之外进行修改,则要求将其标记为“只读”。
// code-linter.json5
{
"rules": {
"@typescript-eslint/prefer-readonly": "error"
}
} export class Container {
// Public members might be modified externally
public publicMember: boolean = true;
// Protected members might be modified by child classes
protected protectedMember: number = Number.MAX_VALUE;
// This is modified later on by the class
private modifiedLater = 'unchanged';
public mutate() {
this.modifiedLater = 'mutated';
}
} export class Container {
// These member variables could be marked as readonly
private neverModifiedMember = true;
private onlyModifiedInConstructor: number;
// Private parameter properties can also be marked as readonly
private neverModifiedParameter: string;
public constructor(
onlyModifiedInConstructor: number,
// Private parameter properties can also be marked as readonly
neverModifiedParameter: string,
) {
this.neverModifiedParameter = neverModifiedParameter;
this.onlyModifiedInConstructor = onlyModifiedInConstructor;
}
} 合作咨询
我们的专家服务团队将竭诚为您提供专业的合作咨询服务
解决方案
精准高效的一站式服务支持,助力开发者商业成功