icssoa 1 年之前
父节点
当前提交
f4c702a438

+ 1 - 1
packages/crud/package.json

@@ -1,6 +1,6 @@
 {
 	"name": "@cool-vue/crud",
-	"version": "7.0.4",
+	"version": "7.0.5",
 	"private": false,
 	"main": "./dist/index.umd.min.js",
 	"typings": "types/index.d.ts",

+ 7 - 6
packages/crud/src/components/crud/helper.ts

@@ -54,7 +54,7 @@ export function useHelper({ config, crud, mitt }: Options) {
 	function refresh(params?: obj) {
 		const { service, dict } = crud;
 
-		return new Promise((end) => {
+		return new Promise((success, error) => {
 			// 合并请求参数
 			const reqParams = paramsReplace(Object.assign(crud.params, params));
 
@@ -67,13 +67,14 @@ export function useHelper({ config, crud, mitt }: Options) {
 			// 完成事件
 			function done() {
 				crud.loading = false;
-				end(true);
 			}
 
 			// 渲染
 			function render(list: any[], pagination?: any) {
-				mitt.emit("crud.refresh", { list, pagination });
+				const res = { list, pagination };
 				done();
+				success(res);
+				mitt.emit("crud.refresh", res);
 			}
 
 			// 下一步
@@ -91,16 +92,16 @@ export function useHelper({ config, crud, mitt }: Options) {
 								render(res.list, res.pagination);
 							}
 
+							success(res);
 							resolve(res);
-							done();
 						})
 						.catch((err) => {
 							ElMessage.error(err.message);
+							error(err);
 							reject(err);
-							done();
 						});
 
-					end(true);
+					done();
 				});
 			}
 

+ 2 - 2
src/modules/demo/components/select-user.vue

@@ -214,7 +214,7 @@ function select() {
 // 全选
 async function selectAll() {
 	// 全部数据
-	await Crud.value?.service.page({ page: 1, size: 10000 }).then((res) => {
+	await Crud.value?.refresh({ page: 1, size: 10000 }).then((res) => {
 		list.value = res.list;
 	});
 
@@ -240,7 +240,7 @@ function remove() {
 // 监听已选列表,返回 ids
 watch(
 	list,
-	(arr) => {
+	(arr = []) => {
 		emit(
 			"update:modelValue",
 			arr.map((e) => e.id)