export default { name: 'transDimission', data: { appcode, pagecode, pageInfo: { pageIndex: 1, pageSize: 10, total: 0, totalPage: 1 }, widget:false, pagiType: '2', // 1 入职 2 离职 showMode: 'list-browse', tabIndex: '1', hrorgobj: {}, lang: {}, searchData: {}, hasListData: false }, sync: { update(state, payload) { return { ...state, ...payload }; } }, async: { /* 获取列表数据 */ getTableData(dispatch, getState, payload) { return proFetch({ url: `${path}HandoversQueryAction.do`, body: payload.postData }); }, /* 获取详情页数据 */ getDetailData(dispatch, getState, payload) { return proFetch({ url: `${path}HandoverDetailAction.do`, body: payload.postData }); }, /* 审批功能 */ sendApprove(dispatch, getState, payload) { return proFetch({ url: `${path}HandoverApproveAction.do`, body: payload.postData }); }, //小部件跳转接口 getWidgetTableData(dispatch,getState,payload){ return proFetch({ url: '/nccloud/hrtrn/widgets/ListData.do', body: payload.postData }) } } };
时间: 2024-04-26 10:25:15 浏览: 197
这是一个 JavaScript 对象,其中包含一个名为 `transDimission` 的默认导出对象。该对象包含以下属性和方法:
- `name`: 字符串类型,名称为 `transDimission`。
- `data`: 对象类型,包含多个属性,如 `appcode`、`pagecode`、`pageInfo`、`widget`、`pagiType`、`showMode`、`tabIndex`、`hrorgobj`、`lang`、`searchData` 和 `hasListData`。
- `sync`: 对象类型,包含一个方法 `update`,用于接收当前状态和新状态,返回一个新的状态对象。
- `async`: 对象类型,包含多个异步方法,如 `getTableData`、`getDetailData`、`sendApprove` 和 `getWidgetTableData`,这些方法可以执行异步操作并返回结果。
该代码可能是一个 Vue.js 组件或 Vuex store 模块,用于实现一个离职申请管理系统的数据管理和异步操作。
相关问题
async getDataList() { this.dataLoading = true let res = await this.$http.get('/sms/sms-is/page', { params: { ...this.queryForm, id: this.queryForm.id, areaCode: this.queryForm.areaCode, kh: this.queryForm.kh, eventType: this.queryForm.eventType, eventLevel: this.queryForm.eventLevel, depCode: this.queryForm.depCode, fieldName: this.queryForm.fieldName, groupCode: this.queryForm.groupCode, userName: this.queryForm.userName, current: this.pageIndex, size: this.pageSize } })
这段代码是一个异步方法`getDataList()`,用于获取数据列表。
首先,将`dataLoading`变量设置为`true`,表示数据正在加载中。
然后,使用`this.$http.get()`方法发起一个GET请求,请求的URL是"/sms/sms-is/page"。通过传递一个参数对象作为第二个参数,该参数对象包含了查询参数。
查询参数包括了`this.queryForm`对象中的一些属性,比如`id`、`areaCode`、`kh`等。使用`...`操作符将`this.queryForm`对象中的属性展开,并将额外的属性`current`和`size`添加到参数对象中。
接着,使用`await`关键字等待请求的结果,将结果保存在`res`变量中。
值得注意的是,这段代码使用了异步函数和`await`关键字来处理异步操作,确保在获取数据之前将`dataLoading`设置为`true`。这样可以在数据加载完成后进行相应的处理。
const loadTableData = (page) => { if (page) { data.value.pagination.pageIndex = 1 } const postData = { ...data.value.search_form, orgid:window.easyj.$p('_orgid'), project_id: window.easyj.$p('project_id'), page: data.value.pagination.pageIndex, pagesize: data.value.pagination.pageSize, } easyj_fund_project.project_team_worker.search_dp(postData,res=>{ if (res.code !== 0) { window.easyj.$message.error(res.msg); } else { data.value.table.data=res.r.rs data.value.pagination.totalRecordCount = res.r.totalRecordCount } }) }
这是一个 Vue.js 组件中的一个方法,用于加载表格数据。具体来说,它首先检查参数 `page` 是否存在,如果存在,将当前页码设置为 1。然后,根据搜索条件和分页信息构建一个 POST 请求的数据对象 `postData`,其中包括组织 ID、项目 ID、页码和每页记录数等信息。最后,调用 `easyj_fund_project.project_team_worker.search_dp` 方法发送请求,并在请求成功后更新表格数据和分页信息。如果请求失败,则弹出错误提示框。
阅读全文