javascript - 如何在组件中使用画布和 Vue?
问题描述
我很想以这种方式将画布添加到我的 Vue 组件中,但它不起作用。
我试图用画布来做document.getElementById("canvas")
,<canvas id="canvas"></canvas>
但它也不起作用。
如何在 Vue 组件中使用画布?
<template>
<div>
<canvas
ref="canvas"
></canvas>
</div>
</template>
<script>
export default {
name: 'levelOne',
data: () => ({
}),
methods:{
func(){
let cvn = this.$refs.canvas;
let ctx = cvn.getContext("2d");
let bg = new Image();
bg.src = "../assets/bg.png";
bg.onload = function() {
ctx.drawImage(bg, 0 ,0);
};
}
},
mounted(){
this.func();
}
}
</script>
解决方案
你可以这样尝试:
<script>
import myImage from "./assets/bg.png";
export default {
name: 'levelOne',
data: () => ({
}),
methods:{
func(){
let cvn = this.$refs.canvas;
let ctx = cvn.getContext("2d");
let bg = new Image();
bg.src = myImage;
bg.onload = function() {
ctx.drawImage(bg, 0 ,0);
};
}
},
mounted(){
this.func();
}
}
</script>
或者只是在public
文件夹中移动您的图像,然后:
bg.src = "/bg.png";
推荐阅读
- scala - 如果我有具有共同属性分配的案例类,我应该使用继承吗?
- pine-script - 在 PineScript 上将此指标转换为 v2 到 v4
- google-apps-script - 发现重复值时发送电子邮件
- javascript - 如何在一个脚本中拨打两个电话?
- python-3.x - Python得到错误:“远程结束关闭连接没有”http.client.RemoteDisconnected:远程结束关闭连接没有响应
- python - python中的if语句问题
- python - 使用 Google Maps API 进行反向地理编码
- django - Django 内置注销重定向不起作用_MDN 教程库
- javascript - 使用反应地点自动完成仅获取国家/地区结果
- javascript - JavaScript:在代码中预定义密码是否安全