【问题标题】:Cannot use property decorator @Prop in vue无法在 vue 中使用属性装饰器 @Prop
【发布时间】:2018-07-08 16:08:11
【问题描述】:

我在 Vue 2 中有一个组件:

import Vue from 'vue';
import Component from 'vue-class-component';
import Prop from 'vue-property-decorator';

@Component({
  template: require('./template.html'),
})

export class SuklTableApprComponent extends Vue {

  @Prop() 
  type: any;

  @Prop()
  data: any;

  mounted() {}

}

我按照文档中的说明进行操作,但打字稿不允许我使用 @Prop 装饰器。它抛出一个错误:

TS2349:无法调用其类型缺少调用签名的表达式。类型 'typeof "/home/tomasturan/programming/sukl/reg-dis-forms-v2/node_modules/vue-property-decorator/li...' 没有兼容的调用签名。

这是为什么呢?我有一个类似的项目,其中所有内容似乎都配置相同并且可以正常工作。为什么会抛出这个错误?

【问题讨论】:

  • 您是否在阅读我的帖子中的内容以及您在此处复制粘贴的帖子中的内容?
  • 我的错,我误解了我链接的帖子中的答案

标签: typescript vue.js vuejs2 decorator vue-component


【解决方案1】:

我认为问题出在您的导入语句上。

import Vue from 'vue';
import Component from 'vue-class-component';
import { Prop } from 'vue-property-decorator'; // no default import, used { Prop } to import the decorator

@Component({
  template: require('./template.html'),
})
export class SuklTableApprComponent extends Vue {

  @Prop()
  type: any;
  @Prop()
  data: any;
  mounted() { }

}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-27
    • 2021-12-15
    • 2019-07-29
    • 2023-03-10
    • 2020-11-15
    相关资源
    最近更新 更多