问题遇到的现象和发生背景
想使用vue+canvas,但是使用canvas后,第一次加载不显示,要刷新以后才显示。
用代码块功能插入代码,请勿粘贴截图
<template>
<div id="app">
<canvas id="mycanvas" width="500" height="500"></canvas>
</div>
</template>
<script>
export default {
name: 'cvs',
mounted() {
this.draw();
},
methods: {
draw() {
window.onload = function() {
var c = document.getElementById("mycanvas");
var ctx = c.getContext("2d");
ctx.beginPath();
// ctx.moveTo(50,150);
// ctx.lineTo(350,150);
// ctx.strokeStyle = 'green';
// ctx.lineWidth = 5;
ctx.fillRect(100,200,300,400)
ctx.stroke();
ctx.closePath();
};
}
}
}
</script>
<style>
</style>
运行结果及报错内容
第一次加载
刷新后