vue/define-props-declaration 스타일
작동 방식
이 규칙은 defineProps의 타입 선언 스타일을 강제합니다. 사용자는 타입 기반 또는 런타임 선언을 사용해야 합니다.
이 규칙은 lang="ts"를 가진 <script setup>에서만 작동합니다.
왜 문제인가요?
코드 스타일이 일관되지 않으면 혼란을 유발하고 코드를 더 어렵게 읽을 수 있습니다.
예시
이 규칙에 부적절한 코드 예시:
vue
// "vue/define-props-declaration": ["error", "type-based"]
<script setup lang="ts">
const props = defineProps({
kind: { type: String },
});
</script>
// "vue/define-props-declaration": ["error", "runtime"]
<script setup lang="ts">
const props = defineProps<{
kind: string;
}>();
</script>이 규칙에 적절한 코드 예시:
vue
// "vue/define-props-declaration": ["error", "type-based"]
<script setup lang="ts">
const props = defineProps<{
kind: string;
}>();
</script>
// "vue/define-props-declaration": ["error", "runtime"]
<script setup lang="ts">
const props = defineProps({
kind: { type: String },
});
</script>구성 방법
이 규칙은 다음 중 하나의 문자열 값을 수용합니다:
"type-based"
타입 기반 선언을 강제합니다.
"runtime"
런타임 선언을 강제합니다.
사용 방법
이 규칙을 구성 파일 또는 명령줄 인터페이스에서 활성화하려면 다음과 같이 사용할 수 있습니다:
json
{
"plugins": ["vue"],
"rules": {
"vue/define-props-declaration": "error"
}
}bash
oxlint --deny vue/define-props-declaration --vue-plugin