Skip to content

Unhandled error during execution of scheduler flush in vue internal code. #13143

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
codebeinAI opened this issue Apr 2, 2025 · 2 comments
Closed

Comments

@codebeinAI
Copy link

Vue version

3.4.21

Link to minimal reproduction

no external reproduced link could be provided

Steps to reproduce

I use el-table implement embeded parents-children list, Buf after some operations, I encounter the console error as follow and I can't touch the "expand" button again.
`runtime-core.esm-bundler.js:47
[Vue warn]: Unhandled error during execution of scheduler flush. This is likely a Vue internals bug. Please open an issue at https://github.com/vuejs/core .
at <ElTableBody context=
Object
highlight=false row-class-name=undefined ... >
at <ElScrollbar ref="scrollBarRef" view-style=
Object
wrap-style=
Object
... >
at
at
at
at <WLCompensationPackMt onVnodeUnmounted=fn ref=Ref<
Proxy(Object)

key="/wl/carry/receive/compensation-mt" >
at <KeepAlive include=
Array(2)

at
at
at
at <Layout class="" onVnodeUnmounted=fn ref=Ref<
Proxy(Object)

at
at <ElConfigProvider namespace="el" locale=
Object
message=
Object
... >
at
at `

Uncaught (in promise) TypeError: Cannot read properties of null (reading 'emitsOptions') at shouldUpdateComponent (runtime-core.esm-bundler.js:1054:27) at updateComponent (runtime-core.esm-bundler.js:5930:9) at processComponent (runtime-core.esm-bundler.js:5878:7) at patch (runtime-core.esm-bundler.js:5335:11) at patchKeyedChildren (runtime-core.esm-bundler.js:6288:9) at patchChildren (runtime-core.esm-bundler.js:6202:11) at patchElement (runtime-core.esm-bundler.js:5630:7) at processElement (runtime-core.esm-bundler.js:5466:7) at patch (runtime-core.esm-bundler.js:5323:11) at patchKeyedChildren (runtime-core.esm-bundler.js:6288:9)

``
After the error occure,"expand"button didn't work any more.
my parents list componet code show below:
`





<el-input
v-model="queryParams.billNo"
placeholder="请输入单号"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>












<el-input
v-model="queryParams.creatorNickname"
placeholder="请输入创建者"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>





<el-button @click="handleQuery"> 搜索
<el-button @click="resetQuery"> 重置
<el-button
type="primary"
plain
@click="openForm('create')"
v-hasPermi="['wl:compensation-pack:create']"
>
新增

<el-button
type="success"
plain
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['wl:compensation-pack:export']"
>
导出



<!-- 使用 v-for 动态渲染列 -->
<el-table-column
    v-for="column in columns"
    :key="column.prop"
    :type="column.type"
    :label="column.label"
    :prop="column.prop"
    :align="column.align || 'center'"
    :width="column.width"
    :formatter="column.formatter"
>
  <template #default="scope">
    <el-tabs v-if="column.type === 'expand'" model-value="compensationPackDt">
          <el-tab-pane label="补运单明细" name="compensationPackDt">
            <CompensationPackDtList :bill-no="scope.row.billNo" />
          </el-tab-pane>
    </el-tabs>
    <!-- 操作列 -->
    <el-button
        v-if="column.prop === 'action' && scope.row.flag === '0'"
        link
        type="primary"
        @click="openForm('update', scope.row.billNo)"
        v-hasPermi="['wl:compensation-pack:update']"
    >
      编辑确认
    </el-button>
    <el-button
        v-if="column.prop === 'action'"
        link
        type="danger"
        @click="handleDelete(scope.row.id)"
        v-hasPermi="['wl:compensation-pack:delete']"
    >
      删除
    </el-button>

    <!-- 字典标签列 -->
    <dict-tag
        v-if="column.dictType"
        :type="DICT_TYPE[column.dictType.toUpperCase()]"
        :value="scope.row[column.prop]"
    />
  </template>
</el-table-column>

<CompensationPackMtForm
:store-list="storeList || []"
v-if="storeList"
ref="formRef"
@success="getList" />

<script setup lang="ts"> import { getStrDictOptions, DICT_TYPE } from '@/utils/dict' import { dateFormatter, formatDate } from '@/utils/formatTime' import {getDefaultEndDate, getDefaultStartDate} from "@/utils/dateUtil"; import download from '@/utils/download' import { CompensationPackMtApi, CompensationPackMtVO } from '@/api/wl/compensationpackmt' import CompensationPackMtForm from './CompensationPackMtForm.vue' import CompensationPackDtList from '@/views/wl/carry/receive/compensationpack-mt/components/CompensationPackDtList.vue' import { vDragable } from 'element-plus-table-dragable'; import { useDragOptions } from '@/hooks/web/useDragOptions' import {ref} from "vue"; import {CarrierApi, CarrierVO} from "@/api/wl/carrier"; import {StoreApi, StoreVO} from "@/api/wl/store"; /** 补运单 列表 */ defineOptions({ name: 'WLCompensationPackMt' }) const message = useMessage() // 消息弹窗 const { t } = useI18n() // 国际化 const loading = ref(true) // 列表的加载中 const list = ref([]) // 列表的数据 const total = ref(0) // 列表的总页数 const queryParams = reactive({ pageNo: 1, pageSize: 10, billNo: undefined, storeCode: undefined, flag: undefined, creatorNickname: undefined, createTime: [] as String[], }) const queryFormRef = ref() // 搜索的表单 const exportLoading = ref(false) // 导出的加载中 const storeList = ref([]); // 列表格式定义 const columns = ref([ { type: 'expand'}, { prop: 'billNo', label: '单号', align: 'center'}, { prop: 'storeCode', label: '仓库', align: 'center'}, { prop: 'flag', label: '状态', align: 'center', dictType: DICT_TYPE.BIZ_COMFIRM_STATUS}, { prop: 'creatorNickname', label: '创建者', align: 'center'}, { prop: 'createTime', label: '创建时间', align: 'center', width: '180px', formatter: dateFormatter}, //操作列 { prop: 'action', label: '操作', align: 'center'}, ]) // 使用拖拽配置 const dragOptions = useDragOptions(columns.value) /** 查询列表 */ const getList = async () => { loading.value = true try { const data = await CompensationPackMtApi.getCompensationPackMtPage(queryParams) list.value = data.list total.value = data.total } finally { loading.value = false } } /** 搜索按钮操作 */ const handleQuery = () => { queryParams.pageNo = 1 getList() } /** 添加/修改操作 */ const formRef = ref() const openForm = (type: string, billNo?: string) => { formRef.value.open(billNo) } /** 删除按钮操作 */ const handleDelete = async (id: number) => { try { // 删除的二次确认 await message.delConfirm() // 发起删除 await CompensationPackMtApi.deleteCompensationPackMt(id) message.success(t('common.delSuccess')) // 刷新列表 await getList() } catch {} } /** 导出按钮操作 */ const handleExport = async () => { try { // 导出的二次确认 await message.exportConfirm() // 发起导出 exportLoading.value = true const data = await CompensationPackMtApi.exportCompensationPackMt(queryParams) download.excel(data, '补运单.xls') } catch { } finally { exportLoading.value = false } } const resetQueryDate = () => { queryParams.createTime = [formatDate(getDefaultStartDate()), formatDate(getDefaultEndDate())] } const fetchStoreHeadList = async () => { storeList.value = await StoreApi.getStoreHeadList() }; /** 重置按钮操作 */ const resetQuery = () => { queryFormRef.value.resetFields() resetQueryDate(); handleQuery() } /** 初始化 **/ onMounted(() => { resetQueryDate() getList() fetchStoreHeadList() }) </script>

`
My child list compenant is embeded using following code

<el-tabs v-if="column.type === 'expand'" model-value="compensationPackDt"> <el-tab-pane label="补运单明细" name="compensationPackDt"> <CompensationPackDtList :bill-no="scope.row.billNo" /> </el-tab-pane> </el-tabs>

What is expected?

The error didn't occur in the console, and the parents-child list page work normally

What is actually happening?

I use el-table implement embeded parents-children list, Buf after some operations, I encounter the console error as follow and I can't touch the "expand" button again.
`runtime-core.esm-bundler.js:47
[Vue warn]: Unhandled error during execution of scheduler flush. This is likely a Vue internals bug. Please open an issue at https://github.com/vuejs/core .
at <ElTableBody context=
Object
highlight=false row-class-name=undefined ... >
at <ElScrollbar ref="scrollBarRef" view-style=
Object
wrap-style=
Object
... >
at
at
at
at <WLCompensationPackMt onVnodeUnmounted=fn ref=Ref<
Proxy(Object)

key="/wl/carry/receive/compensation-mt" >
at <KeepAlive include=
Array(2)

at
at
at
at <Layout class="" onVnodeUnmounted=fn ref=Ref<
Proxy(Object)

at
at <ElConfigProvider namespace="el" locale=
Object
message=
Object
... >
at
at `

Uncaught (in promise) TypeError: Cannot read properties of null (reading 'emitsOptions') at shouldUpdateComponent (runtime-core.esm-bundler.js:1054:27) at updateComponent (runtime-core.esm-bundler.js:5930:9) at processComponent (runtime-core.esm-bundler.js:5878:7) at patch (runtime-core.esm-bundler.js:5335:11) at patchKeyedChildren (runtime-core.esm-bundler.js:6288:9) at patchChildren (runtime-core.esm-bundler.js:6202:11) at patchElement (runtime-core.esm-bundler.js:5630:7) at processElement (runtime-core.esm-bundler.js:5466:7) at patch (runtime-core.esm-bundler.js:5323:11) at patchKeyedChildren (runtime-core.esm-bundler.js:6288:9)

``
After the error occure,"expand"button didn't work any more.

System Info

Any additional comments?

No response

@linzhe141
Copy link
Contributor

https://element-plus.run/

Can you provide a minimal reproducible demo based on the above playground?

@jh-leong
Copy link
Member

jh-leong commented Apr 2, 2025

Please follow the issue guidelines and provide a minimal reproduction. Feel free to open a new issue when ready.

@jh-leong jh-leong closed this as not planned Won't fix, can't repro, duplicate, stale Apr 2, 2025
@github-actions github-actions bot locked and limited conversation to collaborators Apr 17, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants