【问题标题】:Property 'use' does not exist on type 'typeof..., Property 'extend' does not exist on type 'typeof类型“typeof ...”上不存在属性“use”,类型“typeof”上不存在属性“extend”
【发布时间】:2021-01-09 21:51:57
【问题描述】:

我是第一次使用 TypeScript 构建我的 vue 应用程序,我一直被这个 Property 'xxx' does not exist on type 'typeof 问题困扰。我研究过类似的问题,但似乎都没有。我在"vue": "^3.0.0-0""typescript": "~3.9.3"

我安装了 vuetify,所以在我的 vuetify.ts 中我遇到了第一个错误(类型 'typeof 上不存在属性'use')

import Vue from 'vue'
import Vuetify from 'vuetify'

Vue.use(Vuetify)

export default new Vuetify({
})

我在 main.ts 中传递它

createApp(App)
  .use(store)
  .use(router)
  .use(vuetify)
  .mount('#app')

然后在我的 App.vue 上,另一个错误在哪里(类型 'typeof 上不存在属性'extend')我有

export default Vue.extend({
  name: 'App',

  components: {
    //
  },

  data: () => ({
    //
  })
})

我也遵循了here推荐的配置

【问题讨论】:

  • 请在问题正文中包含确切的错误消息。
  • @JaredSmith 完成。希望这会有所帮助
  • “类型'typeof”上不存在属性'use' typeof什么?我敢打赌,错误消息不包含未封闭的报价。请附上确切错误消息。
  • 没有必要向 OP 询问错误消息。他们提供了版本信息,清楚地指出了 v3 中的 API 更改。请参阅 jeremy castelli 的回答
  • 感谢 @Ada 我现在切换回 Vue 2,因为 vue3 还不稳定

标签: typescript vue.js


【解决方案1】:

Vue 3 刚刚发布。 并且不再有Vue.use() 方法。 现在正确的方法是像你做的那样

createApp(App)
  .use(store)
  .use(router)
  .use(vuetify) // there
  .mount('#app')

Vue.extend() 也一样,它不再存在了。

不知道 vuetify 现在是否已经为 vue 3 做好了准备,可能文档还没有更新。

您应该将 Vue 降级到 2.X 版或开始学习 vue 3 并等待所有文档都准备好

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-10-04
    • 2020-08-19
    • 2017-11-06
    • 2018-11-09
    • 2018-04-26
    • 1970-01-01
    • 2018-09-01
    • 2020-10-14
    相关资源
    最近更新 更多