ColumnProps和testData写的都没有问题,但是提示说testData错过了某个属性。如果ColumnProps去掉可以正常编译

来源:4-5 ColumnList 组件编码

chyco

2020-11-29

<script lang="ts">
import { defineComponent, PropType } from 'vue'

export interface ColumnProps {
  id: number;
  title: string;
  avatar: string;
  description: string;
}

export default defineComponent({
  name: 'ColumnList',

  props: {
    list: {
      type: Array as PropType<ColumnProps[]>,
      required: true
    }
  }
})
</script>

<script lang="ts">
import 'bootstrap/dist/css/bootstrap.min.css'
import { defineComponent } from 'vue'
import ColumnList, { ColumnProps } from './components/ColumnList.vue'
const testData: ColumnProps = [{
  id: 1,
  title: '123',
  avatar: 'http://app.huixuejp.com/public/test/0.jpg',
  description: '123'
}, {
  id: 2,
  title: '123',
  avatar: 'http://app.huixuejp.com/public/test/0.jpg',
  description: '123'
}]
export default defineComponent({
  name: 'App',
  components: {
    ColumnList
  },
  setup() {
    return {
      list: testData
    }
  }
})
</script>

图片描述

写回答

1回答

张轩

2020-11-29

同学你好 testData 应该是 ColumnProps 的数组 而不是一个 ColumnProps ,所以要写成 

testData: ColumnProps[] 这种格式

1
1
chyco
谢谢老师!
2020-11-29
共1条回复

Vue3 + TS 仿知乎专栏企业级项目

带你完成前后端分离复杂项目,率先掌握 vue3 造轮子技能

3142 学习 · 2313 问题

查看课程