Vue使用鼠标在Canvas上绘制矩形

 更新时间:2020年12月24日 09:58:27   作者:小诸葛的博客  
这篇文章主要介绍了Vue使用鼠标在Canvas上绘制矩形,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了Vue使用鼠标在Canvas上绘制矩形的具体代码,供大家参考,具体内容如下

1.代码

<template>
 <div class="test" style="background-color: burlywood;">
 <canvas id="myCanvas" ref="myCanvas"
   width="460" height="240" @mousedown="mousedown" @mouseup="mouseup" @mousemove="mousemove">
 </canvas>
 </div>
</template>
 
<script>
 export default {
 name:"hello-world",
 data() {
  return {
  flag: false,
  x: 0,
  y: 0
  };
 },
 watch: {},
 computed: {},
 methods: {
  mousedown(e){
  console.log("鼠标落下");
  this.flag = true;
  this.x = e.offsetX; // 鼠标落下时的X
  this.y = e.offsetY; // 鼠标落下时的Y
  },
  mouseup(e){
  console.log("鼠标抬起");
  this.flag = false;
  },
  mousemove(e){
  console.log("鼠标移动");
  this.drawRect(e);
  },
  drawRect(e){
  if(this.flag){
   console.log("绘制图形");
   const canvas = this.$refs.myCanvas;
   var ctx = canvas.getContext("2d");
   let x = this.x;
   let y = this.y;
 
   ctx.clearRect(0,0,canvas.width,canvas.height);
   ctx.beginPath();
 
   //设置线条颜色,必须放在绘制之前
   ctx.strokeStyle = '#00ff00';
   // 线宽设置,必须放在绘制之前
   ctx.lineWidth = 1;
 
   ctx.strokeRect(x,y,e.offsetX-x,e.offsetY-y);
  }
  }
 },
 created() {
 
 },
 mounted() {
 
 }
 };
</script>
 
<style scoped>
 #myCanvas{
 background-color: forestgreen;
 background-image:url('../bg.jpg');
 }
</style>

2.运行截图

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • vue项目中axios请求网络接口封装的示例代码

    vue项目中axios请求网络接口封装的示例代码

    这篇文章主要介绍了vue项目中axios请求网络接口封装的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • Vue.js每天必学之组件与组件间的通信

    Vue.js每天必学之组件与组件间的通信

    Vue.js每天必学之组件与组件间的通信,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • Vue中的表单输入绑定,双向绑定方式

    Vue中的表单输入绑定,双向绑定方式

    这篇文章主要介绍了Vue中的表单输入绑定,双向绑定方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-03-03
  • Vue.js集成Word实现在线编辑功能

    Vue.js集成Word实现在线编辑功能

    在现代Web应用中,集成文档编辑功能变得越来越常见,特别是在协作环境中,能够直接在Web应用内编辑Word文档可以极大地提高工作效率,本文将详细介绍如何在Vue.js项目中集成Word在线编辑功能,需要的朋友可以参考下
    2024-08-08
  • 一文详解Vue.js生产环境文件及优化策略

    一文详解Vue.js生产环境文件及优化策略

    随着 Vue.js 在前端开发中的普及,如何高效地将 Vue 项目部署到生产环境成为了开发者关注的重点,本文将详细解析 Vue.js 生产环境文件的使用方法、优缺点以及优化策略,需要的朋友可以参考下
    2024-12-12
  • Vue强制组件重新渲染的方法讨论

    Vue强制组件重新渲染的方法讨论

    这篇文章给大家详细介绍了Vue强制组件重新渲染的正确方法,非常的实用,有需要的小伙伴可以参考下
    2020-02-02
  • uni-popup手写菜鸟上门取件时间选择器

    uni-popup手写菜鸟上门取件时间选择器

    这篇文章主要为大家介绍了uni-popup手撸了一个菜鸟上门取件时间选择器,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • vue3实现手机上可拖拽元素的组件

    vue3实现手机上可拖拽元素的组件

    这篇文章主要介绍了vue3实现手机上可拖拽元素的组件,用vue3实现一个可在手机上拖拽元素的组件,可拖拽至任意位置,并且可以防止拖拽元素移出屏幕边缘
    2022-09-09
  • Vue学习笔记进阶篇之过渡状态详解

    Vue学习笔记进阶篇之过渡状态详解

    本篇文章主要介绍了Vue学习笔记进阶篇之过渡状态详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • Vue项目el-upload 上传文件及回显照片和下载文件功能实现

    Vue项目el-upload 上传文件及回显照片和下载文件功能实现

    本次需求是上传多种固定格式的文件,且回显的时候,图片可以正常显示,文件可以进行下载,主要采用element的el-upload组件实现,对Vue项目el-upload 上传文件及回显照片和下载文件功能实现感兴趣的朋友跟随小编一起看看吧
    2023-12-12

最新评论