props数据单向流

Unexpected mutation of “xxx“ prop.(eslintvue/no-mutating-props)

eslint校验报这个错,其实是Vue的单向数据流的概念,因为识别到子组件中修改了props值

错误示例

<template>
    <el-input v-model="name" />
</template>

<script setup>
const props = defineProps({
  name: {
    type: String,
    default: ''
  }
})
</script>

Mr.PDG小于 1 分钟vue3props数据单向流
props组件通讯

vue2

vue2中的props写法:

<!-- 父组件 -->
<template>
    <div>
        <Child :list="list"></Child>
    </div>
</template>
<script>
export default {
    data(){
        return {
            list: [1, 2, 3]
        }
    }
}
</script>
<!-- 子组件 -->
<template>
    <div>
        <span v-for="item in list" :key="item">{{item}}</span>
    </div>
</template>
<script>
export default {
    props: {
        list: {
            type: Array,
            default: () => []
        }
    },
    mounted() {
        console.log(this.list)
    }
}
</script>

Mr.PDG小于 1 分钟Vue3props组件通讯defineProps