Vue의 클래스 구성 요소에 사용할 액세스 한정자를 선택하십시오.
Vue 클래스의 속성 및 메서드에 대해 어떤 수식어를 사용해야 합니까?(사용하고 있습니다.vue-class-component
패키지) public
,private
,protected
?
또는 액세스 수식자를 설정할 필요가 있는 린터 규칙을 꺼야 합니까?
다음은 구성 요소의 예입니다.
@Component({
components: { MyChildComponent }
})
export default class MyComponent extends Vue {
// props
@Prop({ type: String, default: '' }) public readonly value!: string
@Prop({ type: Array, default: () => [] }) public readonly myProp1!: any
@Prop({
type: [Array, Object],
default: () => ({})
}) public readonly myProp2!: any
// data variables
public myVar1: MyClass | null = null
public myVar2: boolean = false
// computed
public get isDisabled (): boolean {
// code...
}
// watch
@Watch('value')
public onValueChange (val) {
// code...
}
// hook
public mounted () {
// code...
}
// method
public setMenuItem () {
// code...
}
}
Public: 속성 또는 메서드는 모든 클래스에서 액세스할 수 있습니다.
보호:동일한 클래스 또는 하위 클래스 내의 속성 또는 메서드에 액세스할 수 있습니다.
개인:동일한 클래스 내에서 속성 또는 메서드에 액세스할 수 있지만 해당 클래스 밖에서는 액세스할 수 없습니다.
자세한 내용은 여기를 참조해 주세요.
사용.public
다른 컴포넌트가 해당 값을 수정하거나 해당 함수를 호출하지 않는 한 일반적으로 문제가 없습니다.그냥...public
디폴트에서는, 다음으로 치환합니다.private
또는protected
필요할 때.
린터를 끄면 문제가 발생하지만 컴포넌트 간에 사용되는 속성이나 메서드에 대한 액세스 수식자를 정의하지 않은 경우에는 디버깅이 번거로울 수 있습니다.
언급URL : https://stackoverflow.com/questions/55339564/what-access-modifiers-should-i-use-for-the-class-component-in-vue
'programing' 카테고리의 다른 글
vue + vuex를 사용한 개발 중에 모의 데이터 사용 (0) | 2022.08.14 |
---|---|
Vuex 데이터를 vue-meta에 바인딩하는 중 (0) | 2022.08.14 |
C에 레퍼런스가 있나요? (0) | 2022.08.14 |
템플릿에 있는 경우 "함수가 아니므로" 스토어의 Vue에 대한 getter에 액세스할 수 없습니다. (0) | 2022.08.14 |
Vue의 온드래거에 상당합니다.드래그 가능(Sortable.js) (0) | 2022.08.14 |