typeScript 装饰器注入类

Aaron
  • 3.9k

我想要在Vue中修饰进去一个类,与Vue组件的类同时被实例话,这里我考虑使用typescript的装饰器。

我在vue中调用修饰方法的时候,传入了一个类,但是,我在方法里面new这个类的时候,抛出了一个错误。

Cannot use 'new' with an expression whose type lacks a call or construct signature.

代码如下:

import Instance from "@/assets/utils/Decoration";

@Instance(LoginDomain)
@Component
export default class VFormLogin extends Vue {}
const Instance  = (Category:object):Function => {
    return function (target:Function):void{
        new Category();
        //  ???? 解决这里
        //  使用装饰器,装饰进去一个类
        //  与Vue一起实例化
    }
}
export default Instance;

这种思路是否可以实现,求解答。

回复
阅读 1.2k
1 个回答

@Component包装过的应该是一个对象 无法使用new操作符的 但是你可以试试在导出这个组件后再用Instance包装,vue-loader会帮你处理的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏