| | |
| | | <div className="live-room-setting-title">微赞直播间设置</div> |
| | | <Spin spinning={loading}> |
| | | <Form form={form} layout="vertical" disabled={loading || !canEdit} className="live-room-setting-form"> |
| | | <Form.Item label="Banner图片" name="bannerImageUrl" rules={[{ required: true, message: '请上传Banner图片' }]}> |
| | | <Input type="hidden" /> |
| | | <Form.Item |
| | | label="Banner图片" |
| | | className="live-room-setting-form__full" |
| | | required |
| | | > |
| | | <Form.Item name="bannerImageUrl" rules={[{ required: true, message: '请上传Banner图片' }]} hidden> |
| | | <Input /> |
| | | </Form.Item> |
| | | <div className="live-room-setting-upload-row"> |
| | | {bannerImageUrl ? <Image src={bannerImageUrl} className="live-room-setting-preview" /> : null} |
| | | <Upload |
| | | accept="image/*" |
| | | showUploadList={false} |
| | |
| | | const url = res.data?.url; |
| | | if (!url) throw new Error('上传失败'); |
| | | form.setFieldValue('bannerImageUrl', url); |
| | | await form.validateFields(['bannerImageUrl']); |
| | | options.onSuccess?.(res); |
| | | } catch (error) { |
| | | message.error((error as Error)?.message || '图片上传失败'); |
| | |
| | | } |
| | | }} |
| | | > |
| | | <Button icon={<PlusOutlined />} loading={uploading}>上传图片</Button> |
| | | </Upload> |
| | | <span className="live-room-setting-tip">建议尺寸 750 × 320px,支持 JPG、PNG</span> |
| | | <div className="live-room-setting-form__cover-box"> |
| | | {bannerImageUrl ? ( |
| | | <Image key={bannerImageUrl} src={bannerImageUrl} width={200} height={112} preview={false} /> |
| | | ) : ( |
| | | <PlusOutlined /> |
| | | )} |
| | | </div> |
| | | </Upload> |
| | | <div className="live-room-setting-tip">建议尺寸 750 × 320px,支持 JPG、PNG,点击图片可替换</div> |
| | | </Form.Item> |
| | | <Form.Item label="直播间地址" name="liveRoomUrl" rules={[{ type: 'url', message: '请输入正确的直播间地址' }, { max: 500 }]}> |
| | | <Input placeholder="请输入微赞直播间地址(可不填)" allowClear /> |
| | | </Form.Item> |