Konvajs + Vuejs 如何在 vue 中访问舞台宽度
Konvajs + Vuejs how to access stage width in vue
在不使用 vue 的情况下使用 Konva 时,我可以像这样访问和修改舞台宽度:
var stage = new Konva.Stage({
container: 'container',
width: stageWidth,
height: stageHeight
});
stage.width(100); //good
我不知道如何访问舞台对象,也不知道如何使用 vuejs 设置其宽度:
<template>
<v-stage :config="configKonva">
<v-layer>
<v-circle :config="configCircle"></v-circle>
</v-layer>
</v-stage>
</template>
<script>
export default {
methods: {
setWidth(width) {
//here I want to access stage and set it's width
}
}
}
</script>
您需要为 v-stage
添加 "ref"。之后,您将可以直接访问 v-stage
组件实例。所以之后你可以调用它的方法getStage()
。
<v-stage :config="configKonva" ref="konva">
...
export default {
methods: {
setWidth(width) {
this.$refs.konva.getStage().width(640);
}
}
在不使用 vue 的情况下使用 Konva 时,我可以像这样访问和修改舞台宽度:
var stage = new Konva.Stage({
container: 'container',
width: stageWidth,
height: stageHeight
});
stage.width(100); //good
我不知道如何访问舞台对象,也不知道如何使用 vuejs 设置其宽度:
<template>
<v-stage :config="configKonva">
<v-layer>
<v-circle :config="configCircle"></v-circle>
</v-layer>
</v-stage>
</template>
<script>
export default {
methods: {
setWidth(width) {
//here I want to access stage and set it's width
}
}
}
</script>
您需要为 v-stage
添加 "ref"。之后,您将可以直接访问 v-stage
组件实例。所以之后你可以调用它的方法getStage()
。
<v-stage :config="configKonva" ref="konva">
...
export default {
methods: {
setWidth(width) {
this.$refs.konva.getStage().width(640);
}
}