Merge pull request #29 from orziz/main

feat: fix typescript
pull/32/head
orzi! 3 years ago committed by GitHub
commit d6171b667c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -1,29 +1,16 @@
import request from '@/utils/request';
import { request } from '@/utils/request';
/**
*
* @param {Object} params
* - @param {string} username
* - @param {string} password
* @returns Promise
*/
export const userLogin = (params: NetParams.AuthUserLogin = {}) => {
/** 用户登录 */
export const userLogin = (params: NetParams.AuthUserLogin): Promise<NetReq.AuthUserLogin> => {
return request({
method: 'post',
url: '/auth/login',
data: params,
}) as unknown as Promise<NetReq.AuthUserLogin>;
});
};
/**
*
* @param {Object} params
* - @param {string} username
* - @param {string} password
* @returns Promise
*/
export const userRegister = (params = {}) => {
/** 注册用户 */
export const userRegister = (params: NetParams.AuthUserRegister): Promise<NetReq.AuthUserRegister> => {
return request({
method: 'post',
url: '/auth/register',
@ -31,12 +18,8 @@ export const userRegister = (params = {}) => {
});
};
/**
*
* @param {Object} params
* @returns Promise
*/
export const userInfo = (token = '') => {
/** 用户信息 */
export const userInfo = (token: NetParams.AuthUserInfo = ""): Promise<NetReq.AuthUserInfo> => {
return request({
method: 'get',
url: '/user/info',
@ -46,14 +29,8 @@ export const userInfo = (token = '') => {
});
};
/**
*
* @param {Object} params
* - @param {string} password
* - @param {string} old_password
* @returns Promise
*/
export const updateUserPassword = (data: any) => {
/** 修改用户密码,该接口暂时未使用 */
export const updateUserPassword = (data: NetParams.AuthUpdateUserPassword): Promise<NetReq.AuthUpdateUserPassword> => {
return request({
method: 'post',
url: '/api/user/password',

@ -1,132 +1,88 @@
import request from '@/utils/request';
import { request } from '@/utils/request';
/**
*
* @param {Object} params
* @returns Promise
*/
export const getPosts = (params: NetParams.PostGetPosts) => {
/** 获取动态列表 */
export const getPosts = (params: NetParams.PostGetPosts): Promise<NetReq.PostGetPosts> => {
return request({
method: 'get',
url: '/posts',
params
}) as unknown as Promise<NetReq.PostGetPosts>;
});
};
/**
*
* @param {Object} params
* @returns Promise
*/
export const getTags = (params: NetParams.PostGetTags) => {
/** 获取标签列表 */
export const getTags = (params: NetParams.PostGetTags): Promise<NetReq.PostGetTags> => {
return request({
method: 'get',
url: '/tags',
params
}) as unknown as Promise<NetReq.PostGetTags>;
});
};
/**
*
* @param {Object} params
* @returns Promise
*/
export const getPost = (params: NetParams.PostGetPost) => {
/** 获取动态详情 */
export const getPost = (params: NetParams.PostGetPost): Promise<NetReq.PostGetPost> => {
return request({
method: 'get',
url: '/post',
params
}) as unknown as Promise<NetReq.PostGetPost>;
});
};
/**
*
* @param {Object} params
* @returns Promise
*/
export const getPostStar = (params: NetParams.PostPostStar) => {
/** 获取动态点赞状态 */
export const getPostStar = (params: NetParams.PostPostStar): Promise<NetReq.PostGetPostStar> => {
return request({
method: 'get',
url: '/post/star',
params
}) as unknown as Promise<NetReq.PostGetPostStar>;
});
};
/**
*
* @param {Object} data
* @returns Promise
*/
export const postStar = (data: NetParams.PostPostStar) => {
/** 动态点赞 */
export const postStar = (data: NetParams.PostPostStar): Promise<NetReq.PostPostStar> => {
return request({
method: 'post',
url: '/post/star',
data
}) as unknown as Promise<NetReq.PostPostStar>;
});
};
/**
*
* @param {Object} params
* @returns Promise
*/
export const getPostCollection = (params: NetParams.PostGetPostCollection) => {
/** 获取动态收藏状态 */
export const getPostCollection = (params: NetParams.PostGetPostCollection): Promise<NetReq.PostGetPostCollection> => {
return request({
method: 'get',
url: '/post/collection',
params
}) as unknown as Promise<NetReq.PostGetPostCollection>;
});
};
/**
*
* @param {Object} data
* @returns Promise
*/
export const postCollection = (data: NetParams.PostPostCollection) => {
/** 动态收藏 */
export const postCollection = (data: NetParams.PostPostCollection): Promise<NetReq.PostPostCollection> => {
return request({
method: 'post',
url: '/post/collection',
data
}) as unknown as Promise<NetReq.PostPostCollection>;
});
};
/**
*
* @param {Object} params
* @returns Promise
*/
export const getPostComments = (params: NetParams.PostGetPostComments) => {
/** 获取动态评论列表 */
export const getPostComments = (params: NetParams.PostGetPostComments): Promise<NetReq.PostGetPostComments> => {
return request({
method: 'get',
url: '/post/comments',
params
}) as unknown as Promise<NetReq.PostGetPostComments>;
});
};
/**
*
* @param {Object} data
* - @param {array} contents
* - @param {array} users at
* - @param {array} tags
* @returns Promise
*/
export const createPost = (data: NetParams.PostCreatePost) => {
/** 发布动态 */
export const createPost = (data: NetParams.PostCreatePost): Promise<NetReq.PostCreatePost> => {
return request({
method: 'post',
url: '/post',
data
}) as unknown as Promise<NetReq.PostCreatePost>;
});
};
/**
*
* @param {Object} data
* - @param {number} id
* @returns Promise
*/
export const deletePost = (data: any) => {
/** 删除动态 */
export const deletePost = (data: NetParams.PostDeletePost): Promise<NetReq.PostDeletePost> => {
return request({
method: 'delete',
url: '/post',
@ -134,42 +90,26 @@ export const deletePost = (data: any) => {
});
};
/**
* /
* @param {Object} data
* - @param {number} id
* @returns Promise
*/
export const lockPost = (data: NetParams.PostLockPost) => {
/** 锁定/解锁动态 */
export const lockPost = (data: NetParams.PostLockPost): Promise<NetReq.PostLockPost> => {
return request({
method: 'post',
url: '/post/lock',
data
}) as unknown as Promise<NetReq.PostLockPost>;
});
};
/**
* /
* @param {Object} data
* - @param {number} id
* @returns Promise
*/
export const stickPost = (data: NetParams.PostStickPost) => {
/** 置顶/取消置顶动态 */
export const stickPost = (data: NetParams.PostStickPost): Promise<NetReq.PostStickPost> => {
return request({
method: 'post',
url: '/post/stick',
data
}) as unknown as Promise<NetReq.PostStickPost>;
});
};
/**
*
* @param {Object} data
* - @param {array} contents
* - @param {array} users at
* @returns Promise
*/
export const createComment = (data: any) => {
/** 发布动态评论 */
export const createComment = (data: NetParams.PostCreateComment): Promise<NetReq.PostCreateComment> => {
return request({
method: 'post',
url: '/post/comment',
@ -177,13 +117,8 @@ export const createComment = (data: any) => {
});
};
/**
*
* @param {Object} data
* - @param {number} id
* @returns Promise
*/
export const deleteComment = (data: any) => {
/** 删除评论 */
export const deleteComment = (data: NetParams.PostDeleteComment): Promise<NetReq.PostDeleteComment> => {
return request({
method: 'delete',
url: '/post/comment',
@ -191,15 +126,8 @@ export const deleteComment = (data: any) => {
});
};
/**
*
* @param {Object} data
* - @param {string} content
* - @param {number} comment_id ID
* - @param {number} at_user_id atID
* @returns Promise
*/
export const createCommentReply = (data: any) => {
/** 发布评论回复 */
export const createCommentReply = (data: NetParams.PostCreateCommentReply): Promise<NetReq.PostCreateCommentReply> => {
return request({
method: 'post',
url: '/post/comment/reply',
@ -207,13 +135,8 @@ export const createCommentReply = (data: any) => {
});
};
/**
*
* @param {Object} data
* - @param {number} id ID
* @returns Promise
*/
export const deleteCommentReply = (data: any) => {
/** 删除评论回复 */
export const deleteCommentReply = (data: NetParams.PostDeleteCommentReply): Promise<NetReq.PostDeleteCommentReply> => {
return request({
method: 'delete',
url: '/post/comment/reply',

@ -1,16 +1,12 @@
import request from '@/utils/request';
import { request } from '@/utils/request';
/**
*
* @param {Object} params
* @returns Promise
*/
export const getCaptcha = (params: NetParams.UserGetCaptcha = {}) => {
/** 获取验证码 */
export const getCaptcha = (params: NetParams.UserGetCaptcha = {}): Promise<NetReq.UserGetCaptcha> => {
return request({
method: 'get',
url: '/captcha',
params
}) as unknown as Promise<NetReq.UserGetCaptcha>;
});
};
/**
@ -31,12 +27,12 @@ export const sendCaptcha = (data: any) => {
* @param {Object} data
* @returns Promise
*/
export const sendUserWhisper = (data: NetParams.UserWhisper) => {
export const sendUserWhisper = (data: NetParams.UserWhisper): Promise<NetParams.UserWhisper> => {
return request({
method: 'post',
url: '/user/whisper',
data
}) as unknown as Promise<NetParams.UserWhisper>;
});
};
/**
@ -44,20 +40,16 @@ export const sendUserWhisper = (data: NetParams.UserWhisper) => {
* @param {Object} data
* @returns Promise
*/
export const bindUserPhone = (data: NetParams.UserBindUserPhone) => {
export const bindUserPhone = (data: NetParams.UserBindUserPhone): Promise<NetParams.UserBindUserPhone> => {
return request({
method: 'post',
url: '/user/phone',
data
}) as unknown as Promise<NetParams.UserBindUserPhone>;
});
};
/**
*
* @param {Object} data
* @returns Promise
*/
export const changePassword = (data: any) => {
/** 更改密码 */
export const changePassword = (data: NetParams.UserChangePassword): Promise<NetReq.UserChangePassword> => {
return request({
method: 'post',
url: '/user/password',
@ -65,12 +57,8 @@ export const changePassword = (data: any) => {
});
};
/**
*
* @param {Object} data
* @returns Promise
*/
export const changeNickname = (data: any) => {
/** 更改昵称 */
export const changeNickname = (data: NetParams.UserChangeNickname): Promise<NetReq.UserChangeNickname> => {
return request({
method: 'post',
url: '/user/nickname',
@ -91,30 +79,22 @@ export const changeAvatar = (data: any) => {
});
};
/**
*
* @param {Object} params
* @returns Promise
*/
export const getUnreadMsgCount = (params: NetParams.UserGetUnreadMsgCount = {}) => {
/** 获取未读消息数 */
export const getUnreadMsgCount = (params: NetParams.UserGetUnreadMsgCount = {}): Promise<NetReq.UserGetUnreadMsgCount> => {
return request({
method: 'get',
url: '/user/msgcount/unread',
params
}) as unknown as Promise<NetReq.UserGetUnreadMsgCount>;
});
};
/**
*
* @param {Object} params
* @returns Promise
*/
export const getMessages = (params: NetParams.UserGetMessages) => {
/** 获取消息列表 */
export const getMessages = (params: NetParams.UserGetMessages): Promise<NetReq.UserGetMessages> => {
return request({
method: 'get',
url: '/user/messages',
params
}) as unknown as Promise<NetReq.UserGetMessages>;
});
};
/**
@ -130,69 +110,49 @@ export const readMessage = (data: any) => {
});
};
/**
*
* @param {Object} params
* @returns Promise
*/
export const getCollections = (params: NetParams.UserGetCollections) => {
/** 获取收藏列表 */
export const getCollections = (params: NetParams.UserGetCollections): Promise<NetReq.UserGetCollections> => {
return request({
method: 'get',
url: '/user/collections',
params
}) as unknown as Promise<NetReq.UserGetCollections>;
});
};
/**
*
* @param {Object} params
* @returns Promise
*/
export const getStars = (params: NetParams.UserGetStars) => {
/** 获取点赞列表 */
export const getStars = (params: NetParams.UserGetStars): Promise<NetReq.UserGetStars> => {
return request({
method: 'get',
url: '/user/stars',
params
}) as unknown as Promise<NetReq.UserGetStars>;
});
};
/**
*
* @param {Object} params
* @returns Promise
*/
export const getUserProfile = (params: NetParams.UserGetUserProfile) => {
/** 获取用户基础信息 */
export const getUserProfile = (params: NetParams.UserGetUserProfile): Promise<NetReq.UserGetUserProfile> => {
return request({
method: 'get',
url: '/user/profile',
params
}) as unknown as Promise<NetReq.UserGetUserProfile>;
});
};
/**
*
* @param {Object} params
* @returns Promise
*/
export const getUserPosts = (params: NetParams.UserGetUserPosts) => {
/** 获取用户帖子列表 */
export const getUserPosts = (params: NetParams.UserGetUserPosts): Promise<NetReq.UserGetUserPosts> => {
return request({
method: 'get',
url: '/user/posts',
params
}) as unknown as Promise<NetReq.UserGetUserPosts>;
});
};
/**
*
* @param {Object} params
* @returns Promise
*/
export const getBills = (params: NetParams.UserGetBills) => {
/** 获取账单列表 */
export const getBills = (params: NetParams.UserGetBills): Promise<NetReq.UserGetBills> => {
return request({
method: 'get',
url: '/user/wallet/bills',
params
}) as unknown as Promise<NetReq.UserGetBills>;
});
};
/**
@ -200,12 +160,12 @@ export const getBills = (params: NetParams.UserGetBills) => {
* @param {Object} data
* @returns Promise
*/
export const reqRecharge = (data: NetParams.UserReqRecharge) => {
export const reqRecharge = (data: NetParams.UserReqRecharge): Promise<NetReq.UserReqRecharge> => {
return request({
method: 'post',
url: '/user/recharge',
data
}) as unknown as Promise<NetReq.UserReqRecharge>;
});
};
/**
@ -213,12 +173,12 @@ export const reqRecharge = (data: NetParams.UserReqRecharge) => {
* @param {Object} params
* @returns Promise
*/
export const getRecharge = (params: NetParams.UserGetRecharge) => {
export const getRecharge = (params: NetParams.UserGetRecharge): Promise<NetReq.UserGetRecharge> => {
return request({
method: 'get',
url: '/user/recharge',
params
}) as unknown as Promise<NetReq.UserGetRecharge>;
});
};
/**
@ -226,12 +186,12 @@ export const getRecharge = (params: NetParams.UserGetRecharge) => {
* @param {Object} params
* @returns Promise
*/
export const getSuggestUsers = (params: { k: string }) => {
export const getSuggestUsers = (params: { k: string }): Promise<NetReq.UserGetSuggestUsers> => {
return request({
method: 'get',
url: '/suggest/users',
params
}) as unknown as Promise<NetReq.UserGetSuggestUsers>;
});
};
/**
@ -239,12 +199,12 @@ export const getSuggestUsers = (params: { k: string }) => {
* @param {Object} params
* @returns Promise
*/
export const getSuggestTags = (params: { k: string }) => {
export const getSuggestTags = (params: { k: string }): Promise<NetReq.UserGetSuggestTags> => {
return request({
method: 'get',
url: '/suggest/tags',
params
}) as unknown as Promise<NetReq.UserGetSuggestTags>;
});
};
/**
@ -252,12 +212,12 @@ export const getSuggestTags = (params: { k: string }) => {
* @param {Object} params
* @returns Promise
*/
export const precheckAttachment = (params: NetParams.UserPrecheckAttachment) => {
export const precheckAttachment = (params: NetParams.UserPrecheckAttachment): Promise<NetReq.UserPrecheckAttachment> => {
return request({
method: 'get',
url: '/attachment/precheck',
params
}) as unknown as Promise<NetReq.UserPrecheckAttachment>;
});
};
/**
@ -265,10 +225,10 @@ export const precheckAttachment = (params: NetParams.UserPrecheckAttachment) =>
* @param {Object} params
* @returns Promise
*/
export const getAttachment = (params: NetParams.UserGetAttachment) => {
export const getAttachment = (params: NetParams.UserGetAttachment): Promise<NetReq.UserGetAttachment> => {
return request({
method: 'get',
url: '/attachment',
params
}) as unknown as Promise<NetReq.UserGetAttachment>;
});
};

@ -120,13 +120,13 @@ const props = withDefaults(defineProps<{
}>(), {})
const comment = computed(() => {
let comment = Object.assign(
let comment: Item.CommentComponentProps = Object.assign(
{
texts: [],
imgs: [],
},
props.comment
) as {texts: Item.CommentProps[], imgs: Item.CommentProps[]} & Item.CommentProps;
);
comment.contents.map((content :any) => {
if (+content.type === 1 || +content.type === 2) {
comment.texts.push(content);

@ -265,7 +265,7 @@ const finishUpload = ({ file, event }: any): any => {
imageContents.value.push({
id: file.id,
content: data.data.content,
});
} as Item.CommentItemProps);
}
}
} catch (error) {

@ -265,7 +265,7 @@ const uploadType = ref('public/image');
const fileQueue = ref<UploadFileInfo[]>([]);
const imageContents = ref<Item.CommentItemProps[]>([]);
const videoContents = ref<Item.CommentItemProps[]>([]);
const attachmentContents = ref<Item.CommentItemProps[]>([]);
const attachmentContents = ref<Item.AttachmentProps[]>([]);
const uploadGateway = import.meta.env.VITE_HOST + '/attachment';
const uploadToken = ref();
@ -402,19 +402,19 @@ const finishUpload = ({ file, event }: any): any => {
imageContents.value.push({
id: file.id,
content: data.data.content,
});
} as Item.CommentItemProps);
}
if (uploadType.value === 'public/video') {
videoContents.value.push({
id: file.id,
content: data.data.content,
});
} as Item.CommentItemProps);
}
if (uploadType.value === 'attachment') {
attachmentContents.value.push({
id: file.id,
content: data.data.content,
});
} as Item.AttachmentProps);
}
}
} catch (error) {

@ -42,7 +42,7 @@ import { precheckAttachment, getAttachment } from '@/api/user';
const props = withDefaults(
defineProps<{
attachments: Item.AttachmentProps[];
attachments: Item.PostItemProps[];
price?: number;
}>(),
{
@ -54,7 +54,7 @@ const showDownloadModal = ref(false);
const downloadTip = ref<any>('');
const attachmentID = ref(0);
const download = (attachment: Item.AttachmentProps) => {
const download = (attachment: Item.PostItemProps) => {
showDownloadModal.value = true;
attachmentID.value = attachment.id;

@ -197,7 +197,7 @@ const emit = defineEmits<{
const post = computed({
get: () => {
let post: Required<Item.PostProps> = Object.assign(
let post: Item.PostComponentProps = Object.assign(
{
texts: [],
imgs: [],

@ -230,7 +230,7 @@ const defaultImg =
const thumbnail =
'?x-oss-process=image/resize,m_fill,w_300,h_300,limit_0/auto-orient,1/format,png';
const props = withDefaults(defineProps<{
imgs: Item.PostProps[],
imgs: Item.PostItemProps[],
}>(), {
imgs: () => []
});

@ -101,7 +101,7 @@ const props = withDefaults(defineProps<{
}>(), {});
const post = computed(() => {
let post: Required<Item.PostProps> = Object.assign(
let post: Item.PostComponentProps = Object.assign(
{
texts: [],
imgs: [],

@ -17,7 +17,7 @@
<script setup lang="ts">
import { LinkOutline } from '@vicons/ionicons5';
const props = withDefaults(defineProps<{
links: Item.PostProps[]
links: Item.PostItemProps[]
}>(), {
links: () => []
});

@ -22,7 +22,7 @@ import NVideo from 'nonesir-video';
const props = withDefaults(
defineProps<{
videos: Item.PostProps[];
videos: Item.PostItemProps[];
full?: boolean;
}>(),
{

@ -1,8 +1,26 @@
declare module NetParams {
interface AuthUserLogin {
username?: string,
password?: string
/** 用户名 */
username: string,
/** 密码 */
password: string
}
interface AuthUserRegister {
/** 用户名 */
username: string,
/** 密码 */
password: string
}
type AuthUserInfo = string
interface AuthUpdateUserPassword {
/** 新密码 */
password: string,
/** 旧密码 */
old_password: string
}
interface UserGetCollections {
@ -28,6 +46,7 @@ declare module NetParams {
}
interface UserGetUserPosts {
/** 用户名 */
username: string,
page: number,
page_size: number
@ -69,6 +88,18 @@ declare module NetParams {
content: string
}
interface UserChangePassword {
/** 新密码 */
password: string,
/** 旧密码 */
old_password: string
}
interface UserChangeNickname {
/** 昵称 */
nickname: string
}
interface PostGetPost {
id: number
}
@ -92,11 +123,11 @@ declare module NetParams {
id: number
}
interface PostGetPostCollection {
interface PostPostStar {
id: number
}
interface PostPostStar {
interface PostGetPostCollection {
id: number
}
@ -114,14 +145,44 @@ declare module NetParams {
}
interface PostCreatePost {
contents: {
content: string,
type: number,
sort: number
}[],
/** 帖子内容列表 */
contents: Partial<Item.PostItemProps>[],
/** 标签列表 */
tags: string[],
/** 艾特用户列表 */
users: string[],
/** 附件价格 */
attachment_price: number
}
interface PostDeletePost {
id: number
}
interface PostCreateComment {
/** 内容ID */
post_id: number,
/** 帖子内容列表 */
contents: Partial<Item.CommentItemProps>[],
/** 艾特用户列表 */
users: string[]
}
interface PostDeleteComment {
id: number
}
interface PostCreateCommentReply {
/** 艾特的用户UID */
at_user_id: number,
/** 回复的评论ID */
comment_id: number,
/** 回复内容 */
content: string
}
interface PostDeleteCommentReply{
id: number
}
}

@ -1,12 +1,27 @@
declare module NetReq {
interface AuthUserLogin {
token?: string
token: string
}
interface AuthUserRegister {
/** 用户UID */
id: number,
/** 用户名 */
username: string
}
type AuthUserInfo = Item.UserInfo
interface AuthUpdateUserPassword {
}
interface UserGetCollections {
list: any[],
pager: AnyObject
/** 帖子列表 */
list: Item.PostProps[],
/** 页码信息 */
pager: Item.PagerProps
}
type UserGetSuggestUsers = string[]
@ -23,17 +38,23 @@ declare module NetReq {
}
interface UserGetMessages {
/** 消息列表 */
list: Item.MessageProps[],
/** 页码信息 */
pager: Item.PagerProps
}
interface UserGetUserPosts {
/** 帖子列表 */
list: Item.PostProps[],
/** 页码信息 */
pager: Item.PagerProps
}
interface UserGetStars {
/** 帖子列表 */
list: Item.PostProps[],
/** 页码信息 */
pager: Item.PagerProps
}
@ -41,6 +62,7 @@ declare module NetReq {
interface UserGetBills {
list: Item.BillProps[],
/** 页码信息 */
pager: Item.PagerProps
}
@ -59,33 +81,46 @@ declare module NetReq {
interface UserGetCaptcha {
id: string,
/** 头像图片 base64 */
b64s: string
}
interface UserChangeNickname {
}
interface UserChangePassword {
}
type PostGetPost = Item.PostProps
interface PostGetPosts {
/** 帖子列表 */
list: Item.PostProps[],
/** 页码信息 */
pager: Item.PagerProps
}
interface PostLockPost {
lock_status: number
/** 锁定状态0为未锁定1为锁定 */
lock_status: 0 | 1
}
interface PostStickPost {
top_status: number
/** 置顶状态0为未置顶1为置顶 */
top_status: 0 | 1
}
interface PostGetPostStar {
status: boolean
}
interface PostGetPostCollection {
interface PostPostStar {
status: boolean
}
interface PostPostStar {
interface PostGetPostCollection {
status: boolean
}
@ -96,9 +131,28 @@ declare module NetReq {
type PostGetTags = Item.TagProps[]
interface PostGetPostComments {
list: Item.PostProps[]
/** 评论列表 */
list: Item.CommentProps[],
/** 页码信息 */
pager: Item.PagerProps
}
type PostCreatePost = Item.PostProps
interface PostDeletePost {
}
type PostCreateComment = Item.CommentProps
interface PostDeleteComment {
}
type PostCreateCommentReply = Item.ReplyProps
interface PostDeleteCommentReply{
}
}

@ -1,85 +1,282 @@
declare module Item {
interface UserInfo {
/** 用户UID */
id: number,
/** 用户名 */
username: string,
/** 用户昵称 */
nickname: string,
avatar: string
/** 用户头像 */
avatar: string,
/** 用户手机号 */
phone?: string,
/** 是否为管理员 */
is_admin: boolean,
/** 用户余额(分) */
balance?: number,
/** 用户状态 */
status?: 0 | 1
}
/** 评论内容 */
interface CommentItemProps {
id: number | string,
content: string
/** 内容ID */
id: number,
/** 评论ID */
comment_id: number,
/** 评论者UID */
user_id: number,
/** 类别1为标题2为文字段落3为图片地址4为视频地址5为语音地址6为链接地址 */
type: number,
/** 内容 */
content: string,
/** 排序,越小越靠前 */
sort: number,
/** 创建时间 */
created_on: number,
/** 修改时间 */
modified_on?: number,
/** 删除时间 */
deleted_on?: number,
/** 是否删除0为未删除1为已删除 */
is_del?: 0 | 1
}
interface CommentProps extends CommentItemProps {
type: number,
/** 评论数据 */
interface CommentProps {
id: number,
post_id: number,
/** 评论者UID */
user_id: number,
/** 评论者用户信息 */
user: UserInfo,
contents: CommentProps[],
/** 评论内容 */
contents: CommentItemProps[],
/** 回复列表 */
replies: ReplyProps[],
/** 评论者IP地址 */
ip?: string,
/** 评论者城市地址 */
ip_loc: string,
created_on: number
/** 创建时间 */
created_on: number,
/** 修改时间 */
modified_on?: number,
/** 删除时间 */
deleted_on?: number,
/** 是否删除0为未删除1为已删除 */
is_del?: 0 | 1
}
interface CommentComponentProps extends CommentProps {
/** 文字评论列表 */
texts: CommentItemProps[],
/** 图片评论列表 */
imgs: CommentItemProps[]
}
/** 回复内容 */
interface ReplyProps {
/** 内容ID */
id: number,
/** 评论ID */
comment_id: number,
/** 回复人ID */
user_id: number,
/** 回复人用户数据 */
user: UserInfo,
/** 艾特人ID */
at_user_id: number,
/** 艾特人用户数据 */
at_user: UserInfo,
/** 内容 */
content: string,
/** 回复人IP地址 */
ip?: string,
/** 回复人城市地址 */
ip_loc: string,
created_on: number
/** 创建时间 */
created_on: number,
/** 修改时间 */
modified_on?: number,
/** 删除时间 */
deleted_on?: number,
/** 是否删除0为未删除1为已删除 */
is_del?: 0 | 1
}
interface PostProps {
/** 帖子内容 */
interface PostItemProps {
/** 内容ID */
id: number,
/** 类型1为标题2为文字段落3为图片地址4为视频地址5为语音地址6为链接地址7为附件资源8为收费资源 */
type: number,
/** POST ID */
post_id: number,
/** 内容 */
content: string,
/** 排序,越小越靠前 */
sort: number,
/** 用户UID */
user_id?: number,
/** 创建时间 */
created_on: number,
/** 修改时间 */
modified_on?: number,
/** 删除时间 */
deleted_on?: number,
/** 是否删除0为未删除1为已删除 */
is_del?: 0 | 1,
}
/** 帖子 */
interface PostProps {
id: number,
/** 发帖人UID */
user_id: number,
/** 发帖人用户数据 */
user: UserInfo,
/** 附件价格(分) */
attachment_price: number,
/** 发帖时IP地址 */
ip?: string,
/** 发帖时城市地址 */
ip_loc: string,
created_on: number,
/** 最新回复时间 */
latest_replied_on: number,
/** 创建时间 */
created_on: number,
/** 修改时间 */
modified_on?: number,
/** 删除时间 */
deleted_on?: number,
/** 点赞数 */
upvote_count: number,
/** 评论数 */
comment_count: number,
/** 收藏数 */
collection_count: number,
content: string,
contents: PostProps[],
/** 内容列表 */
contents: PostItemProps[],
/** 标签列表 */
tags: {[key: string]: number} | string,
/** 是否锁定 */
is_lock: number,
/** 是否置顶 */
is_top: number,
texts?: PostProps[],
imgs?: PostProps[],
videos?: PostProps[],
links?: PostProps[],
attachments?: PostProps[],
charge_attachments?: PostProps[]
/** 是否精华 */
is_essence: number,
/** 是否删除0为未删除1为已删除 */
is_del?: 0 | 1
}
/** 组件用帖子 */
interface PostComponentProps extends PostProps {
/** 文字段落列表 */
texts: PostItemProps[],
/** 图片列表 */
imgs: PostItemProps[],
/** 视频列表 */
videos: PostItemProps[],
/** 链接列表 */
links: PostItemProps[],
/** 附件列表 */
attachments: PostItemProps[],
/** 收费附件列表 */
charge_attachments: PostItemProps[]
}
interface MessageProps {
id: number,
/** 类型1为动态2为评论3为回复4为私信99为系统通知 */
type: number,
is_read: number,
sender_user: UserInfo
post: PostProps,
/** 摘要说明 */
breif: string,
/** 详细内容 */
content: string,
/** 是否已读0为未读1为已读 */
is_read: 0 | 1,
/** 发送人UID */
sender_user_id: number,
/** 发送人用户数据 */
sender_user: UserInfo,
/** 接收方UID */
receiver_user_id: number,
/** 帖子ID */
post_id: number,
/** 帖子内容 */
post: PostProps,
/** 评论ID */
comment_id: number,
/** 评论内容 */
comment: CommentProps,
/** 回复ID */
reply_id: number,
/** 回复内容 */
replay: ReplyProps,
/** 创建时间 */
created_on: number,
breif: string
content?: string
/** 修改时间 */
modified_on?: number,
/** 删除时间 */
deleted_on?: number,
/** 是否删除0为未删除1为已删除 */
is_del?: 0 | 1
}
interface AttachmentProps {
id: number,
type: number
/** 类别1为图片2为视频3为其他附件 */
type: 1 | 2 | 3,
/** 发布者用户UID */
user_id: number,
/** 发布者用户数据 */
user: UserInfo,
/** 文件大小 */
file_size: number,
/** 图片宽度 */
img_width?: number,
/** 图片高度 */
img_height?: number,
/** 内容 */
content: string,
/** 创建时间 */
created_on: number,
/** 修改时间 */
modified_on?: number,
/** 删除时间 */
deleted_on?: number,
/** 是否删除0为未删除1为已删除 */
is_del?: 0 | 1
}
interface TagProps {
id: number,
quote_num: number,
/** 创建者UID */
user_id: number,
/** 创建者用户数据 */
user: UserInfo,
/** 标签名 */
tag: string,
user: UserInfo
/** 引用数 */
quote_num: number,
/** 创建时间 */
created_on: number,
/** 修改时间 */
modified_on?: number,
/** 删除时间 */
deleted_on?: number,
/** 是否删除0为未删除1为已删除 */
is_del?: 0 | 1
}
interface PagerProps {
/** 当前页码 */
page: number,
/** 每页条数 */
page_size: number,
/** 总条数 */
total_rows: number
}

@ -1,4 +1,4 @@
import axios from 'axios';
import axios, { AxiosRequestConfig, AxiosRequestHeaders, Method } from 'axios';
const service = axios.create({
baseURL: import.meta.env.VITE_HOST,
@ -48,3 +48,7 @@ service.interceptors.response.use(
);
export default service;
export function request<T, R>(config: AxiosRequestConfig<T>): Promise<R> {
return service(config) as unknown as Promise<R>;
}

@ -54,7 +54,7 @@ const route = useRoute();
const post = ref<Item.PostProps>({} as Item.PostProps);
const loading = ref(false);
const commentLoading = ref(false);
const comments = ref<Item.PostProps[]>([]);
const comments = ref<Item.CommentProps[]>([]);
const postId = computed(() => +(route.query.id as string));
const loadPost = () => {

@ -285,9 +285,9 @@ const modelData = reactive({
imgCaptcha: '',
phone: '',
phone_captcha: '',
password: null,
old_password: null,
reenteredPassword: null,
password: "",
old_password: "",
reenteredPassword: "",
});
const beforeUpload = async (data: any) => {

Loading…
Cancel
Save