VueJS-函数结果作为Prop的默认值

问题描述

将VueJS与类组件和vue-property-decorator一起使用,我正在尝试编写一个uuid Prop的Vue组件,默认情况下,该Prop默认为新的uuid(使用npm软件包uuid):

import {Component,Prop,Vue} from 'vue-property-decorator';
import * as uuid from 'uuid';

@Component
export default class BlockComponent extends Vue {
  @Prop({default: uuid.v1()}) uuid!: string;
}

,以便在实例化中提供服务器提供的uuid时,将其用于前端,如果未使用,则意味着它是一个新元素,并且应为该组件生成新的uuid。这段代码的问题在于,最终我会产生多个具有相同uuid的组件(但不是全部)。

解决方法

根据documentation,您可以使用构造函数,因此可以传递一个函数。

@Prop(options: (PropOptions | Constructor[] | Constructor) = {})

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...