我想要在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;
这种思路是否可以实现,求解答。
已关闭
悬赏分:80
点赞 0反对 0举报 0
收藏 0
分享 0
回答1
-
@Component包装过的应该是一个对象 无法使用new操作符的 但是你可以试试在导出这个组件后再用Instance包装,vue-loader会帮你处理的
支持 0 反对 0 举报2021-11-27 11:21