vscode中的vue项目报错Property ‘xxx‘ does not exist on type ‘CombinedVueInstance<{ readyOnly…Vetur(2339)

在Vscode中开发Vue项目时,可能会遇到如下错误提示:Property ‘xxx’ does not exist on type ‘CombinedVueInstance<{ readyOnly: false; }, {}, {}, {}, Readonly<Record<…”,这种错误提示一般是类型检查导致的。

解决该问题的方法如下:

  1. 使用注释忽略类型检查

在Vue组件中指定一个“注释区块”,使用该注释块可以避免TypeScript对该实例中的其他属性进行类型检查。

示例:

<template>
  <div>
    {{ msg }}
  </div>
</template>

<script>
// @ts-ignore
export default {
  name: 'HelloWorld',
  data() {
    return {
      msg: 'Welcome to Your Vue.js App',
      other: 'This is another attribute'
    }
  }
}
</script>

在上述示例中,我们使用了注释“// @ts-ignore”忽略了Vue中data方法中的other属性,在组件中直接使用该属性时会报“Property ‘other’ does not exist on type ‘CombinedVueInstance<{readonly: false;}, {}, {}, {}, Readonly<Record<…>>’”错误,在添加了忽略注释后,该组件就不会报错了。

  1. 声明属性

我们可以在Vue组件对象中声明需要使用的属性,以指示TypeScript注入该属性,从而避免错误。

示例:

<template>
  <div>
    {{ msg }}
  </div>
</template>

<script lang="ts">
interface ComponentData {
  msg: string
}

export default {
  name: 'HelloWorld',

  data(): ComponentData{
    return {
      msg: 'Welcome to Your Vue.js App'
    }
  }
}
</script>

在上述示例中,我们使用了interface声明了需要使用的属性msg,并在data方法中返回了该对象,指示TypeScript注入该属性后,该组件就不会报错了。

总结:

以上两种方式都是为了避免TypeScript对Vue组件进行属性检查导致的报错,如果你使用的是VSCode中的Vetur插件,还可以在安装vue-shim.d.ts文件后解决该问题。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vscode中的vue项目报错Property ‘xxx‘ does not exist on type ‘CombinedVueInstance<{ readyOnly…Vetur(2339) - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • Vue+Vux项目实践完整代码

    Vue+Vux项目实践完整代码攻略 1. 前置知识 在进行Vue+Vux开发前,需要掌握以下基础知识: HTML、CSS、JavaScript基础语法 Vue.js框架基础语法 Vuex状态管理库基础语法 NPM包管理器基础命令 2. 安装Vue+Vux 在开始编写代码之前,需要先安装Vue.js和Vux,具体步骤如下: 安装Vue.js npm insta…

    Vue 2023年5月27日
    00
  • 基于Vue组件化的日期联动选择器功能的实现代码

    基于Vue组件化的日期联动选择器功能的实现可以分为以下步骤: 设计组件 首先,在设计组件时,我们需要定义组件的属性(props)和组件的方法(methods)。在该日期联动选择器组件中,我们需要为它定义以下属性: currentYear:当前选中的年份 currentMonth:当前选中的月份 startYear:起始年份 endYear:截止年份 接下来定…

    Vue 2023年5月29日
    00
  • Vue自定义组件的四种方式示例详解

    下面是“Vue自定义组件的四种方式示例详解”的完整攻略。 1. Vue组件的基本概念 作为Vue.js的核心,组件是很重要的概念。Vue.js中组件是可复用的Vue实例,带有一个名字,可以传入不同的属性(props)和方法(methods)和被访问的状态(data)。组件的复用性对于大部分Web应用程序来说都至关重要。组件的定义是Vue实例的一个扩展,其提供…

    Vue 2023年5月27日
    00
  • 一文快速详解前端框架 Vue 最强大的功能

    一文快速详解前端框架 Vue 最强大的功能 前言 Vue 是一款非常流行的前端框架,它不仅仅是一个库,更是一种思想,它的最大优点就是能够很好的拆分成各个组件来开发,易于维护和扩展。在这篇文章中,我将向大家介绍 Vue 最强大的功能。 Vue 组件化编程 Vue 能够很好的拆分成各个组件来开发,一个组件就相当于一个独立的功能模块。组件化开发能够提高代码的复用性…

    Vue 2023年5月27日
    00
  • Vue使用provide各种传值后inject获取undefined的问题及解决

    在Vue中,可以通过provide和inject实现非父子组件之间的数据传递。但是,在实际使用中,会遇到使用provide传递的值在inject中获取时出现undefined的情况。本文将详细讲解这个问题以及解决方案。 问题表现 使用provide向子组件提供数据,但在子组件中使用inject获取时,却获取到了undefined。 问题原因 在Vue中,pr…

    Vue 2023年5月28日
    00
  • Vue3中watch的用法与最佳实践指南

    Vue3中watch的用法与最佳实践指南 在Vue3中,watch是一个用于监听数据变化并进行相应处理的观察者函数。在实际开发中,watch可以提供非常方便的数据响应式处理,因此它是Vue3中非常重要的一部分。在本篇攻略中,我们将深入了解Vue3中watch的用法和最佳实践,以帮助您更好地使用Vue3。 基本用法 在Vue3中,我们可以通过watch选项来定…

    Vue 2023年5月29日
    00
  • vue3中h函数的常用使用方式汇总

    下面是“vue3中h函数的常用使用方式汇总”的完整攻略。 简介 在Vue3中,我们可以使用h函数来手动编写渲染函数,动态生成虚拟DOM。h函数实际上是createElement函数的别名,调用前需要先导入。 基本使用 h函数可以通过传入元素的标签名、属性和子节点来创建element。 import { h } from ‘vue’; const vnode …

    Vue 2023年5月27日
    00
  • 初识 Vue.js 中的 *.Vue文件

    初识 Vue.js 中的 .vue 文件 在 Vue.js 中,.vue 文件是一个自定义的单文件组件(Single-File Component),可以将 HTML、CSS 和 JavaScript 集中到一个 .vue 文件中,并进行组件化开发。 一个 .vue 文件一般包含三部分:template(模板)、script(脚本)和 style(样式),它…

    Vue 2023年5月28日
    00
合作推广
合作推广
分享本页
返回顶部