🔱: [client] sync upgrade with 9 commits [trident-sync]

perf: 完善文档,完善部分types
perf: 优化d.ts类型
perf: 日期增加week、month、year、quarter类型
feat: resetCrudOptions 示例
feat: tabs快捷查询组件
fix: 行编辑支持多级表头

https://github.com/fast-crud/fast-crud/issues/143
perf: antdv 增加自定义表头示例

https://github.com/fast-crud/fast-crud/issues/141
perf: 表单下方按钮支持context

https://github.com/fast-crud/fast-crud/issues/142
This commit is contained in:
GitHub Actions Bot
2023-03-09 19:24:01 +00:00
parent 76dd23174a
commit 52a167c647
100 changed files with 1465 additions and 585 deletions
@@ -1,12 +1,17 @@
<template>
<fs-page>
<template #header>
<div class="title">
分发时复制Dict
<span class="sub">如果你想要表格里同一个字段的dict和form表单同一个字段的dict不一样就需要分发时复制</span>
</div>
<div class="more">
<a target="_blank" href="http://fast-crud.docmirror.cn/guide/advance/dict.html">文档</a>
</div>
</template>
<fs-crud ref="crudRef" v-bind="crudBinding">
<template #actionbar-right>
<a-alert
class="ml-1"
type="warning"
message="如果你想要表格里同一个字段的dict和form表单同一个字段的dict不一样,就需要分发时复制;----点击switch看效果----↓↓↓↓↓↓"
/>
<a-alert class="ml-1" type="warning" message="如果你想要表格里同一个字段的dict和form表单同一个字段的dict不一样,就需要分发时复制;----点击switch看效果----↓↓↓↓↓↓" />
</template>
</fs-crud>
</fs-page>
@@ -1,12 +1,17 @@
<template>
<fs-page>
<template #header>
<div class="title">
原型复制Dict
<span class="sub">dict配置作为原型任何用到的地方都会clone一个新的实例例同一个字段每一行的dict都是不一样的</span>
</div>
<div class="more">
<a target="_blank" href="http://fast-crud.docmirror.cn/guide/advance/dict.html">文档</a>
</div>
</template>
<fs-crud ref="crudRef" v-bind="crudBinding">
<template #actionbar-right>
<a-alert
class="ml-1"
type="warning"
message="dict配置作为原型,任何用到的地方都会clone一个新的实例例(同一个字段每一行的dict都是不一样的)------点击switch看效果-------↓↓↓↓↓↓↓↓"
/>
<a-alert class="ml-1" type="warning" message="------点击switch看效果-------↓↓↓↓↓↓↓↓" />
</template>
</fs-crud>
</fs-page>
@@ -1,7 +1,7 @@
import { requestForMock } from "/src/api/service";
const request = requestForMock;
const apiPrefix = "/mock/DictSharedManager";
export function GetList(query) {
export function GetList(query: any) {
return request({
url: apiPrefix + "/page",
method: "get",
@@ -9,7 +9,7 @@ export function GetList(query) {
});
}
export function AddObj(obj) {
export function AddObj(obj: any) {
return request({
url: apiPrefix + "/add",
method: "post",
@@ -17,7 +17,7 @@ export function AddObj(obj) {
});
}
export function UpdateObj(obj) {
export function UpdateObj(obj: any) {
return request({
url: apiPrefix + "/update",
method: "post",
@@ -25,7 +25,7 @@ export function UpdateObj(obj) {
});
}
export function DelObj(id) {
export function DelObj(id: any) {
return request({
url: apiPrefix + "/delete",
method: "post",
@@ -33,7 +33,7 @@ export function DelObj(id) {
});
}
export function GetObj(id) {
export function GetObj(id: any) {
return request({
url: apiPrefix + "/info",
method: "get",
@@ -1,18 +1,19 @@
import * as api from "./api";
import * as api from "./api.js";
import { statusDict } from "../shared-dict";
export default function ({ crudExpose }) {
const pageRequest = async (query) => {
import { AddReq, CreateCrudOptionsProps, CreateCrudOptionsRet, DelReq, EditReq, UserPageQuery, UserPageRes } from "@fast-crud/fast-crud";
export default function ({ crudExpose }: CreateCrudOptionsProps): CreateCrudOptionsRet {
const pageRequest = async (query: UserPageQuery): Promise<UserPageRes> => {
return await api.GetList(query);
};
const editRequest = async ({ form, row }) => {
const editRequest = async ({ form, row }: EditReq) => {
form.id = row.id;
return await api.UpdateObj(form);
};
const delRequest = async ({ row }) => {
const delRequest = async ({ row }: DelReq) => {
return await api.DelObj(row.id);
};
const addRequest = async ({ form }) => {
const addRequest = async ({ form }: AddReq) => {
return await api.AddObj(form);
};
@@ -1,14 +1,16 @@
<template>
<fs-page>
<fs-crud ref="crudRef" v-bind="crudBinding">
<template #actionbar-right>
<a-alert class="ml-1" type="warning" message="管理共享字典,此处添加和修改字典,在使用时实时变化" />
</template>
</fs-crud>
<template #header>
<div class="title">
管理共享字典
<span class="sub">此处添加和修改字典在使用时实时变化</span>
</div>
</template>
<fs-crud ref="crudRef" v-bind="crudBinding"> </fs-crud>
</fs-page>
</template>
<script>
<script lang="ts">
import { defineComponent, onMounted } from "vue";
import { useFs } from "@fast-crud/fast-crud";
import createCrudOptions from "./crud";
@@ -16,8 +18,8 @@ import createCrudOptions from "./crud";
export default defineComponent({
name: "DictSharedManager",
setup() {
// crud组件的ref
const { crudBinding, crudRef, crudExpose } = useFs({ createCrudOptions });
const customValue: any = {}; //自定义变量,传给createCrudOptions的额外参数(可以任意命名,任意多个)
const { crudBinding, crudRef, crudExpose, customExport } = useFs({ createCrudOptions, customValue });
// 页面打开后获取列表数据
onMounted(() => {
@@ -1,5 +1,6 @@
// @ts-ignore
import mockUtil from "/src/mock/base";
const options = {
const options: any = {
name: "DictSharedManager",
idGenerator: 0,
copyTimes: 1
@@ -1,5 +1,5 @@
import { dict, utils } from "@fast-crud/fast-crud";
import * as api from "./manager/api";
import * as api from "./manager/api.js";
export const statusDict = dict({
value: "name",
async getData() {
@@ -1,7 +1,7 @@
import { requestForMock } from "/src/api/service";
const request = requestForMock;
const apiPrefix = "/mock/DictSharedUse";
export function GetList(query) {
export function GetList(query: any) {
return request({
url: apiPrefix + "/page",
method: "get",
@@ -9,7 +9,7 @@ export function GetList(query) {
});
}
export function AddObj(obj) {
export function AddObj(obj: any) {
return request({
url: apiPrefix + "/add",
method: "post",
@@ -17,7 +17,7 @@ export function AddObj(obj) {
});
}
export function UpdateObj(obj) {
export function UpdateObj(obj: any) {
return request({
url: apiPrefix + "/update",
method: "post",
@@ -25,7 +25,7 @@ export function UpdateObj(obj) {
});
}
export function DelObj(id) {
export function DelObj(id: any) {
return request({
url: apiPrefix + "/delete",
method: "post",
@@ -33,7 +33,7 @@ export function DelObj(id) {
});
}
export function GetObj(id) {
export function GetObj(id: any) {
return request({
url: apiPrefix + "/info",
method: "get",
@@ -1,18 +1,20 @@
import * as api from "./api";
import * as api from "./api.js";
import { statusDict } from "../shared-dict";
export default function ({ crudExpose }) {
const pageRequest = async (query) => {
import { AddReq, CreateCrudOptionsProps, CreateCrudOptionsRet, DelReq, EditReq, UserPageQuery, UserPageRes } from "@fast-crud/fast-crud";
export default function ({ crudExpose }: CreateCrudOptionsProps): CreateCrudOptionsRet {
const pageRequest = async (query: UserPageQuery): Promise<UserPageRes> => {
return await api.GetList(query);
};
const editRequest = async ({ form, row }) => {
const editRequest = async ({ form, row }: EditReq) => {
form.id = row.id;
return await api.UpdateObj(form);
};
const delRequest = async ({ row }) => {
const delRequest = async ({ row }: DelReq) => {
return await api.DelObj(row.id);
};
const addRequest = async ({ form }) => {
const addRequest = async ({ form }: AddReq) => {
return await api.AddObj(form);
};
@@ -1,23 +1,26 @@
<template>
<fs-page>
<fs-crud ref="crudRef" v-bind="crudBinding">
<template #actionbar-right>
<a-alert class="ml-1" type="warning" message="共享字典的使用" />
</template>
</fs-crud>
<template #header>
<div class="title">
共享字典的使用
<span class="sub">在管理共享字典页面添加字典后使用时会自动增加字典选项</span>
</div>
</template>
<fs-crud ref="crudRef" v-bind="crudBinding"> </fs-crud>
</fs-page>
</template>
<script>
<script lang="ts">
import { defineComponent, onMounted } from "vue";
import { useFs } from "@fast-crud/fast-crud";
import createCrudOptions from "./crud";
import createCrudOptions from "./crud.js";
export default defineComponent({
name: "DictSharedUse",
setup() {
// crud组件的ref
const { crudBinding, crudRef, crudExpose } = useFs({ createCrudOptions });
const customValue: any = {}; //自定义变量,传给createCrudOptions的额外参数(可以任意命名,任意多个)
const { crudBinding, crudRef, crudExpose, customExport } = useFs({ createCrudOptions, customValue });
// 页面打开后获取列表数据
onMounted(() => {
@@ -1,5 +1,6 @@
// @ts-ignore
import mockUtil from "/src/mock/base";
const options = {
const options: any = {
name: "DictSharedUse",
idGenerator: 0
};
@@ -1,8 +1,17 @@
<template>
<fs-page>
<template #header>
<div class="title">
单例Dict
<span class="sub">修改一个影响全部组件</span>
</div>
<div class="more">
<a target="_blank" href="http://fast-crud.docmirror.cn/guide/advance/dict.html">文档</a>
</div>
</template>
<fs-crud ref="crudRef" v-bind="crudBinding">
<template #actionbar-right>
<a-alert class="ml-1" type="warning" message="单例dict,修改一个,影响全部组件,----------点击switch看效果----------↓↓↓↓↓↓↓↓↓↓↓↓↓↓" />
<a-alert class="ml-1" type="warning" message="----------点击switch看效果----------↓↓↓↓↓↓↓↓↓↓↓↓↓↓" />
</template>
</fs-crud>
</fs-page>