用户上传了头像以后,可以生成几个不同尺寸的用户头像。
先打开 app-upload.config ,在这个配置文件里添加一个新的配置,放在 upload 这里,名字是 avatarResized,它的值是调整了大小之后生成的头像文件的位置,对应的值用一下 path.join,一个 dest,一个 avatar,再加上一个 resized 。
创建了用户头像数据以后,可以发布一个用户头像已创建的事件,在这个事件的处理器那里,简单准备一下,再执行一个调整图像大小的命令。
头像已创建事件
在终端,项目所在目录的下面,执行 npm run ge ,生成一个事件,名字是 avatar-created,放在 avatar/modules/create/events 目录的下面。
回到项目,打开 AvatarCreated 事件,先定义一下事件参数,可以直接让它继承一下 AvatarEntity。
发布事件
然后打开 CreateAvatarCommandHandler,改造一下 execute ,给这个新创建的头像数据起个名字叫 avatar ,创建了头像数据以后,发布一个事件,新建一个 AvatarCreatedEvent,提供一个 avatar 实体数据。最后再让这个方法返回一个 avatar。