使用canvas绘制,封装到组件中,在mounted方法中调用draw,在h5是好的,在真机上就是绘制不出来。有大佬指点一二没?
组件:
<template>
<canvas canvas-id="ayy" class="ayy"></canvas>
</template>
<script>
export default{
name: "myCanvas",
mounted() {
console.log("mounted");
this.drawCircle();
},
methods:{
drawCircle(){
console.log("aa");
let ctx = uni.createCanvasContext("ayy");
console.log(ctx);
ctx.setStrokeStyle("#000000");
ctx.setLineWidth(6);
ctx.beginPath();
ctx.arc(50, 50, 50, 0, 2 * Math.PI);
ctx.stroke();
ctx.draw();
}
}
}
</script>
使用:
<template>
<view>
<my-canvas></my-canvas>
</view>
</template>
<script>
import myCanvas from './fragments/myCanvas'
export default {
components: {
myCanvas
},
......
7 个回复
2***@qq.com
你好
1***@qq.com (作者)
应该不是代码的问题,同样的代码,在一个项目中可以,在另一个项目中就绘制不出来。
w***@163.com
let ctx = uni.createCanvasContext("ayy"); 这句出错了,应该let ctx = uni.createCanvasContext("ayy",this);这样写
4***@qq.com
请问这个问题有解决吗
森屿阁 - 专注与前端开发
setTimeout(function(
ctx.stroke();
ctx.draw();
),500)
加定时器
4***@qq.com
这个方法我试过,首次加载出现,第二次加载就失效了
2020-07-06 13:42
1***@qq.com
解决了吗
1***@qq.com
请问解决了吗