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

perf: DynamicallyCrudOptions 动态CrudOptions
refactor: doc cover
refactor: doc cover
pull/14/head
GitHub Actions Bot 2023-03-13 19:24:02 +00:00
parent 263b0fa455
commit f344c58f26
7 changed files with 30 additions and 34 deletions

View File

@ -1,22 +1,20 @@
import * as api from "./api"; import * as api from "./api";
import { requestForMock } from "/src/api/service"; import { AddReq, CreateCrudOptionsProps, CreateCrudOptionsRet, DelReq, EditReq, UserPageQuery, UserPageRes } from "@fast-crud/fast-crud";
import { useCompute } from "@fast-crud/fast-crud"; import { computed, ref } from "vue";
import { message } from "ant-design-vue";
import { ref, computed } from "vue"; export default function ({ crudExpose }: CreateCrudOptionsProps): CreateCrudOptionsRet {
const { asyncCompute, compute } = useCompute(); const pageRequest = async (query: UserPageQuery): Promise<UserPageRes> => {
export default function ({ expose }) {
const pageRequest = async (query) => {
return await api.GetList(query); return await api.GetList(query);
}; };
const editRequest = async ({ form, row }) => { const editRequest = async ({ form, row }: EditReq) => {
form.id = row.id; form.id = row.id;
return await api.UpdateObj(form); return await api.UpdateObj(form);
}; };
const delRequest = async ({ row }) => { const delRequest = async ({ row }: DelReq) => {
return await api.DelObj(row.id); return await api.DelObj(row.id);
}; };
const addRequest = async ({ form }) => { const addRequest = async ({ form }: AddReq) => {
return await api.AddObj(form); return await api.AddObj(form);
}; };
@ -48,7 +46,7 @@ export default function ({ expose }) {
}, },
rowHandle: { rowHandle: {
fixed: "right", fixed: "right",
align:'center', align: "center"
}, },
columns: { columns: {
id: { id: {

View File

@ -10,30 +10,19 @@
</fs-page> </fs-page>
</template> </template>
<script> <script lang="ts">
import { defineComponent, ref, onMounted } from "vue"; import { defineComponent, onMounted } from "vue";
import { useCrud, useExpose } from "@fast-crud/fast-crud"; import { useFs } from "@fast-crud/fast-crud";
import createCrudOptions from "./crud"; import createCrudOptions from "./crud";
export default defineComponent({ export default defineComponent({
name: "BasisComputeMore", name: "BasisComputeMore",
setup() { setup() {
// crudref const { crudBinding, crudRef, crudExpose, output } = useFs({ createCrudOptions });
const crudRef = ref();
// crud ref
const crudBinding = ref();
//
const { expose } = useExpose({ crudRef, crudBinding });
// crud
const { crudOptions, output } = createCrudOptions({ expose });
// crud
// eslint-disable-next-line @typescript-eslint/no-unused-vars,no-unused-vars
const { resetCrudOptions } = useCrud({ expose, crudOptions });
// crud
// resetCrudOptions(options)
// //
onMounted(() => { onMounted(() => {
expose.doRefresh(); crudExpose.doRefresh();
}); });
return { return {

View File

@ -1,6 +1,6 @@
import * as api from "./api"; import * as api from "./api";
import { requestForMock } from "/src/api/service"; import { requestForMock } from "/src/api/service";
import { AddReq, CreateCrudOptionsProps, CreateCrudOptionsRet, DelReq, EditReq, useCompute, UserPageQuery, UserPageRes } from "@fast-crud/fast-crud"; import { AddReq, ButtonProps, CreateCrudOptionsProps, CreateCrudOptionsRet, DelReq, EditReq, RowHandleProps, useCompute, UserPageQuery, UserPageRes } from "@fast-crud/fast-crud";
import { message } from "ant-design-vue"; import { message } from "ant-design-vue";
import { ref, computed } from "vue"; import { ref, computed } from "vue";
const { asyncCompute, compute } = useCompute(); const { asyncCompute, compute } = useCompute();
@ -58,9 +58,12 @@ export default function ({ crudExpose }: CreateCrudOptionsProps): CreateCrudOpti
}, },
rowHandle: { rowHandle: {
fixed: "right", fixed: "right",
show: computed(() => {
return false;
}),
buttons: { buttons: {
edit: { edit: {
show: compute(({ row }) => { show: compute<boolean>(({ row }) => {
return row.editable; return row.editable;
}) })
}, },
@ -68,7 +71,13 @@ export default function ({ crudExpose }: CreateCrudOptionsProps): CreateCrudOpti
show: compute(({ row }) => { show: compute(({ row }) => {
return row.editable; return row.editable;
}) })
} },
custom: compute(({ row }) => {
return {
text: "动态按钮:" + row.id,
show: true
};
})
} }
}, },
columns: { columns: {

View File

@ -25,8 +25,8 @@
</template> </template>
<script lang="ts"> <script lang="ts">
import {defineComponent, onMounted} from "vue"; import { defineComponent, onMounted } from "vue";
import {useFs} from "@fast-crud/fast-crud"; import { useFs } from "@fast-crud/fast-crud";
import createCrudOptions from "./crud"; import createCrudOptions from "./crud";
export default defineComponent({ export default defineComponent({

View File

@ -33,7 +33,7 @@ export function DelObj(id: any) {
}); });
} }
export function GetObj(id) { export function GetObj(id: any) {
return request({ return request({
url: apiPrefix + "/info", url: apiPrefix + "/info",
method: "get", method: "get",