mirror of https://github.com/certd/certd
parent
e11b7802c2
commit
a8edaf4dfa
|
@ -7,17 +7,16 @@
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import zhCN from "ant-design-vue/es/locale/zh_CN";
|
import zhCN from "ant-design-vue/es/locale/zh_CN";
|
||||||
import enUS from "ant-design-vue/es/locale/en_US";
|
import enUS from "ant-design-vue/es/locale/en_US";
|
||||||
import { provide, ref, nextTick } from "vue";
|
import { provide, ref, nextTick, getCurrentInstance } from "vue";
|
||||||
import { usePageStore } from "/src/store/modules/page";
|
import { usePageStore } from "/src/store/modules/page";
|
||||||
import { useResourceStore } from "/src/store/modules/resource";
|
import { useResourceStore } from "/src/store/modules/resource";
|
||||||
import { useSettingStore } from "/@/store/modules/settings";
|
import { useSettingStore } from "/@/store/modules/settings";
|
||||||
import "dayjs/locale/zh-cn";
|
import "dayjs/locale/zh-cn";
|
||||||
import "dayjs/locale/en";
|
import "dayjs/locale/en";
|
||||||
import dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
import { useAsync } from "@fast-crud/fast-crud/src/use/use-async";
|
|
||||||
export default {
|
export default {
|
||||||
name: "App",
|
name: "App",
|
||||||
setup() {
|
setup(props: any, ctx: any) {
|
||||||
//刷新页面方法
|
//刷新页面方法
|
||||||
const routerEnabled = ref(true);
|
const routerEnabled = ref(true);
|
||||||
const locale = ref(zhCN);
|
const locale = ref(zhCN);
|
||||||
|
@ -48,9 +47,6 @@ export default {
|
||||||
const settingStore = useSettingStore();
|
const settingStore = useSettingStore();
|
||||||
settingStore.init();
|
settingStore.init();
|
||||||
|
|
||||||
const { registerAsyncLib } = useAsync();
|
|
||||||
registerAsyncLib("FsExportUtil");
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
routerEnabled,
|
routerEnabled,
|
||||||
locale
|
locale
|
||||||
|
|
|
@ -2,21 +2,19 @@ import { request, requestForMock } from "/src/api/service";
|
||||||
// import "/src/mock";
|
// import "/src/mock";
|
||||||
import { ColumnCompositionProps, CrudOptions, FastCrud, PageQuery, PageRes, setLogger, TransformResProps, useColumns, UseCrudProps, UserPageQuery, useTypes, useUi } from "@fast-crud/fast-crud";
|
import { ColumnCompositionProps, CrudOptions, FastCrud, PageQuery, PageRes, setLogger, TransformResProps, useColumns, UseCrudProps, UserPageQuery, useTypes, useUi } from "@fast-crud/fast-crud";
|
||||||
import "@fast-crud/fast-crud/dist/style.css";
|
import "@fast-crud/fast-crud/dist/style.css";
|
||||||
import { CsvColumn, ExportUtil, FsExtendsCopyable, FsExtendsEditor, FsExtendsJson, FsExtendsTime, FsExtendsUploader, FsExtendsExport } from "@fast-crud/fast-extends";
|
import { FsExtendsCopyable, FsExtendsEditor, FsExtendsJson, FsExtendsTime, FsExtendsUploader } from "@fast-crud/fast-extends";
|
||||||
import "@fast-crud/fast-extends/dist/style.css";
|
import "@fast-crud/fast-extends/dist/style.css";
|
||||||
import UiAntdv from "@fast-crud/ui-antdv";
|
import UiAntdv from "@fast-crud/ui-antdv";
|
||||||
import _ from "lodash-es";
|
import _ from "lodash-es";
|
||||||
import { useCrudPermission } from "../permission";
|
import { useCrudPermission } from "../permission";
|
||||||
import { GetSignedUrl } from "/@/views/crud/component/uploader/s3/api";
|
import { GetSignedUrl } from "/@/views/crud/component/uploader/s3/api";
|
||||||
import { notification } from "ant-design-vue";
|
import { notification } from "ant-design-vue";
|
||||||
import { useAsync } from "@fast-crud/fast-crud/src/use/use-async";
|
|
||||||
import { useI18n } from "vue-i18n";
|
import { useI18n } from "vue-i18n";
|
||||||
|
|
||||||
function install(app: any, options: any = {}) {
|
function install(app: any, options: any = {}) {
|
||||||
app.use(UiAntdv);
|
app.use(UiAntdv);
|
||||||
//设置日志级别
|
//设置日志级别
|
||||||
setLogger({ level: "debug" });
|
setLogger({ level: "debug" });
|
||||||
const { t } = useI18n();
|
|
||||||
app.use(FastCrud, {
|
app.use(FastCrud, {
|
||||||
i18n: options.i18n,
|
i18n: options.i18n,
|
||||||
async dictRequest({ url }: any) {
|
async dictRequest({ url }: any) {
|
||||||
|
@ -33,6 +31,7 @@ function install(app: any, options: any = {}) {
|
||||||
commonOptions(props: UseCrudProps): CrudOptions {
|
commonOptions(props: UseCrudProps): CrudOptions {
|
||||||
const crudBinding = props.crudExpose?.crudBinding;
|
const crudBinding = props.crudExpose?.crudBinding;
|
||||||
const { ui } = useUi();
|
const { ui } = useUi();
|
||||||
|
const { t } = useI18n();
|
||||||
const opts: CrudOptions = {
|
const opts: CrudOptions = {
|
||||||
table: {
|
table: {
|
||||||
size: "small",
|
size: "small",
|
||||||
|
@ -53,41 +52,6 @@ function install(app: any, options: any = {}) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
toolbar: {
|
|
||||||
buttons: {
|
|
||||||
export: {
|
|
||||||
show: true,
|
|
||||||
type: "primary",
|
|
||||||
icon: ui.icons.export,
|
|
||||||
order: 4,
|
|
||||||
title: t("fs.toolbar.export.title"), // '导出',
|
|
||||||
circle: true,
|
|
||||||
click: async () => {
|
|
||||||
const columns: CsvColumn[] = [];
|
|
||||||
_.each(crudBinding.value.table.columnsMap, (col: ColumnCompositionProps) => {
|
|
||||||
if (col.exportable !== false && col.key !== "_index") {
|
|
||||||
columns.push({
|
|
||||||
prop: col.key,
|
|
||||||
label: col.title
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
const { loadAsyncLib } = useAsync();
|
|
||||||
//加载异步组件,不影响首页加载速度
|
|
||||||
const exportUtil: ExportUtil = await loadAsyncLib({
|
|
||||||
name: "FsExportUtil"
|
|
||||||
});
|
|
||||||
await exportUtil.csv({
|
|
||||||
columns,
|
|
||||||
data: crudBinding.value.data,
|
|
||||||
title: "table",
|
|
||||||
noHeader: false
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
rowHandle: {
|
rowHandle: {
|
||||||
buttons: {
|
buttons: {
|
||||||
view: { type: "link", text: null, icon: "ion:eye-outline" },
|
view: { type: "link", text: null, icon: "ion:eye-outline" },
|
||||||
|
@ -297,7 +261,6 @@ function install(app: any, options: any = {}) {
|
||||||
app.use(FsExtendsJson);
|
app.use(FsExtendsJson);
|
||||||
app.use(FsExtendsTime);
|
app.use(FsExtendsTime);
|
||||||
app.use(FsExtendsCopyable);
|
app.use(FsExtendsCopyable);
|
||||||
app.use(FsExtendsExport);
|
|
||||||
|
|
||||||
// 此处演示自定义字段类型
|
// 此处演示自定义字段类型
|
||||||
const { addTypes } = useTypes();
|
const { addTypes } = useTypes();
|
||||||
|
|
Loading…
Reference in New Issue