修复 antv x6 渲染时报“Uncaught DOMException: Failed to execute ‘inverse‘ on ‘SVGMatrix‘: The matrix”错误的问题

使用quasar框架,在q-dialog弹窗组件中渲染 antv x6 官方示例时,节点间的连线没有正确渲染,报出已下错误:

@antv_x6.js?v=c5cf8a79:3110 Uncaught DOMException: Failed to execute 'inverse' on 'SVGMatrix': The matrix is not invertible.
    at Object.getTransformToElement (http://localhost:9000/node_modules/.q-cache/vite/spa/deps/@antv_x6.js?v=c5cf8a79:3110:24)
    at Object.getBBox (http://localhost:9000/node_modules/.q-cache/vite/spa/deps/@antv_x6.js?v=c5cf8a79:11035:36)
    at http://localhost:9000/node_modules/.q-cache/vite/spa/deps/@antv_x6.js?v=c5cf8a79:12543:44
    at Array.forEach (<anonymous>)
    at AttrManager.update (http://localhost:9000/node_modules/.q-cache/vite/spa/deps/@antv_x6.js?v=c5cf8a79:12533:18)
    at EdgeView.updateAttrs (http://localhost:9000/node_modules/.q-cache/vite/spa/deps/@antv_x6.js?v=c5cf8a79:12934:15)
    at EdgeView.updateLabels (http://localhost:9000/node_modules/.q-cache/vite/spa/deps/@antv_x6.js?v=c5cf8a79:22888:14)
    at EdgeView.renderLabels (http://localhost:9000/node_modules/.q-cache/vite/spa/deps/@antv_x6.js?v=c5cf8a79:22802:10)
    at EdgeView.render (http://localhost:9000/node_modules/.q-cache/vite/spa/deps/@antv_x6.js?v=c5cf8a79:22693:10)
    at EdgeView.confirmUpdate (http://localhost:9000/node_modules/.q-cache/vite/spa/deps/@antv_x6.js?v=c5cf8a79:22680:12)

显示效果:

解决方法:

在弹窗打开后,延迟渲染

// 显示弹窗
function showDialog() {
    dialogRef.value.show();

    setTimeout(()=>{
        // 渲染antv x6
        renderGraph();
    }, 100)
}

 欢迎关注公众号:清晰编程,获取更多精彩内容

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值