vue-ts 中的“VueRouter”类型上不存在属性“历史”

Posted

技术标签:

【中文标题】vue-ts 中的“VueRouter”类型上不存在属性“历史”【英文标题】:Property 'history' does not exist on type 'VueRouter' in vue-ts 【发布时间】:2021-02-08 13:58:19 【问题描述】:

我在应用程序中使用 typescript vue,我有这个错误来自一个组件,我尝试访问像这样传递到路由中的参数

  properties = getModule(PropertiesModule, this.$store);
  mounted() 
    id = this.$router.history.current.params.id;
    this.properties.getProperty(id);
  
  get months() 
    return this.$store.state.app.months;
  
  get property() 
    return this.$store.state.properties.property;
  

代码运行得非常好,因为据我所知,这不是违规行为。但打字稿仍然抛出错误。我尝试使用 es-lint disable-next-line 但它不起作用。我还尝试在我的 main.ts 中为路由器指定 any 类型,但效果不佳。 有没有比这更好的方法来访问 vue.js 中的路由器参数?

【问题讨论】:

【参考方案1】:

您可以在 Vue.js 中使用 $route.params 获取参数。

如果你想得到id 参数,这可能会成功。

this.$route.params.id

【讨论】:

以上是关于vue-ts 中的“VueRouter”类型上不存在属性“历史”的主要内容,如果未能解决你的问题,请参考以下文章

html VUE-TS-视图

类型 IInstance 上不存在 typescript 文件属性 selectpicker 中的错误

如何修复 typeScript 中的“对象”类型上不存在“属性”拨号

ionic3项目中的'SQLite'类型上不存在错误属性'openDatabase'?

打字稿中的错误:“AngularFireStorageModule”类型上不存在属性 .ref

JS 文件中的 TS 警告:“类型 X 上不存在属性 X”:是不是可以编写更干净的 JavaScript?