我正在尝试使用 Vue 2 中的 Vue-Konva 构建一个非常基本的视频编辑应用程序。这是一个名为“konvaStage”的 Vue 组件。这是一个带有 1px 黑框的简单舞台:
<template>
<div>
<v-stage :config='stageConfig'>
<v-layer>
<v-rect :config='rectConfig'></v-rect>
</v-layer>
</v-stage>
</div>
</template>
<script>
export default {
name: 'konvaStage',
data() {
return {
stageConfig: {
width: 300,
height: 300,
},
rectConfig: {
x: 0,
y: 0,
width: 300,
height: 300,
stroke: 'black',
strokeWidth: 1
}
};
}
}
</script>
尽管在组件文件和父应用程序视图中使用 CSS 来对齐舞台,但舞台始终位于左侧居中,与窗口边框有一些边距。我同时使用了 text-align 和 align-content 属性。
我设法通过将舞台包装在<p align='center'> </p>
标签中来找到一种方法。但是,添加边框会显示画布会扩展到页面的整个宽度。特别是,在此配置中管理点击事件及其坐标是不可能的。
有没有更好的方法来做到这一点?