vue3+vite+antv/x6打包 自定义节点无法显示

使用vue3 vite3打包项目后,自定义节点无法加载,只有内置节点circle,线和port显示出来了

问题描述:
开发环境一切正常,打包以后开启踩坑模式——自定义图形无法添加到画布上。
问题原因:
通过 render 方法渲染的 vue 组件,可以正常显示,但是通过 template 渲染的 vue 组件,build 之后不会正常显示。

我的package.json

"vite": "^3.2.2",
"vue": "^3.2.41",
"@antv/x6": "^1.31.3",
"@antv/x6-vue-shape": "^1.3.2",


解决方案:

1.修改vite.config.js

resolve: {
  alias: [
    {
      find: '@antv/x6',
      replacement: '@antv/x6/dist/x6.js',
    },
    {
      find: '@antv/x6-vue-shape',
      replacement: '@antv/x6-vue-shape/lib',
    },
  ],
}

2.修改注册组件在vue3中写法如下:由template改为render即可

registerPart.js


import { createVNode } from "vue";
import Count from "./components/Count";
Graph.registerNode("my-count", {
      inherit: "vue-shape",
      x: 200,
      y: 150,
      width: 150,
      height: 100,
      component: {
        render: ()=>{
         return createVNode(Count);
        }
      },
    });

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值