fabric.js点击group 种的子元素

fabric.js点击group 种的子元素

    • [切记 一档要设置 group 的subTargetCheck 属性为true](#切记 一档要设置 group 的subTargetCheck 属性为true)

切记 一档要设置 group 的subTargetCheck 属性为true

代码如下

js 复制代码
<template>
  <div class="page">
    <canvas id="canvas" width="400" height="400"></canvas>

  </div>
  
</template>

<script>
import * as THREE from "three";
import CubeComponent from "./test.vue";

export default {
  components: {
    CubeComponent
  },
  mounted() {
    this.init();
  },
  data() {
    return {
      current: 1
    };
  },
  methods: {
    init() {
      // 创建一个Canvas对象
      var canvas = new fabric.Canvas("canvas");

      // 创建两个Fabric对象
      var rect = new fabric.Rect({
        width: 100,
        height: 100,
        fill: "red",
        left: 50,
        top: 50
      });
      var circle = new fabric.Circle({
        radius: 50,
        fill: "blue",
        left: 150,
        top: 150
      });

      // 将这两个对象添加到一个Group对象中

      var group = new fabric.Group();
      group.subTargetCheck = true

      // 将Group对象添加到Canvas中
      canvas.add(group);

      // 将元素添加到 Group 中
      group.addWithUpdate(rect);
      group.addWithUpdate(circle);

      // 遍历 Group 中的所有元素,并绑定事件
      group.forEachObject(function(obj) {
        console.log(obj);
        
        obj.on("mousedown", function() {
          console.log("点击了 Group 中的元素",obj);
        });
      });
    }
  }
};
</script>
<style lang="scss" scoped>
.page {
  width: 100%;
  height: 100%;
}
</style>
相关推荐
kyriewen6 小时前
Claude Code 的额度今天缩水了17%——官方公告上写的是"永久提高25%"
前端·ai编程·claude
雪芽蓝域zzs7 小时前
vue解构平铺VS对象包裹
前端·javascript·vue.js
风骏时光牛马7 小时前
从零到实战,完整AI学习路线
前端
三十而立洋8 小时前
深入理解 Monorepo:子包安装依赖
前端·前端工程化
IT_陈寒8 小时前
Java Stream处理大集合,我的内存怎么就炸了
前端·人工智能·后端
Captaincc8 小时前
AI 用量桌面端-桌面宠物自定义指南
前端·人工智能
OpenTiny社区9 小时前
码力全开,智启前端新生态|OpenTiny 登陆华为全联接大会2026
前端·github
妙码生花9 小时前
利用AI从零学Go并完成实战项目,完工总结:目录结构
前端·后端·go
妙码生花9 小时前
利用AI从零学Go并完成实战项目,完工总结:商业级开源产品定位和核心特性介绍
前端·后端·go
Captaincc9 小时前
掘金AI用量统计v0.1.0大更新-支持桌面宠物自定义和订阅额度卡片
前端·后端