Vue.js 当某个特定的<;v-stepper-content>;是什么?
在vuetify步进器组件中,我嵌入了自己的vue组件。我想根据div的宽度定义div的高度,使其具有“dina”图纸的比例。 问题:当我的组件安装时,div的宽度为0,我不知道何时重复测量 我需要有正确的div比例,它应该是响应的。如果在显示div的上下文后触发事件,则可以正确设置高度 在父组件中:Vue.js 当某个特定的<;v-stepper-content>;是什么?,vue.js,vuetify.js,Vue.js,Vuetify.js,在vuetify步进器组件中,我嵌入了自己的vue组件。我想根据div的宽度定义div的高度,使其具有“dina”图纸的比例。 问题:当我的组件安装时,div的宽度为0,我不知道何时重复测量 我需要有正确的div比例,它应该是响应的。如果在显示div的上下文后触发事件,则可以正确设置高度 在父组件中: <v-stepper-content step="4"> <ad-preview></ad-preview> ... 在mou
<v-stepper-content step="4">
<ad-preview></ad-preview>
...
在mounted()中,我调用“this.setContainerSizes()”——但是宽度是0,因为在安装组件时div是“不可见的”
要测试,功能I包括“测试”按钮。当我单击按钮时,结果是正确的:div的高度设置为正确的值
我希望有一个计划好的解决方案,这样我就不必通过setInterval或vuex(步骤属性的全局值)切换到解决方案
非常感谢您提供的每一条线索。我知道这是一个解决办法,但您可以检查
v-flex的大小。如下所示:
new ResizeObserver(setContainerSizes).observe(myVFlex)
在vuetify的github中请求这个怎么样?观察步长值不起作用,因为在步长改变时有一个转换,并且步长值在转换完成之前改变,这意味着新的步长内容仍然没有显示(宽度为0)。很抱歉我的回答太晚,Joao。我已经用ResizeObserver实现了这个方法,它很有效。因为我对Vue和Vuetify还是一个新手,所以我想在github上发布一个问题之前先了解一下自己是否有知识差距。谢谢你的回答和评论。
getWindowWidth() {
this.containerWidth = this.$refs.cont.offsetWidth;
},
setContainerSizes(){
this.getWindowWidth();
this.containerHeight = this.containerWidth * 1.414285714285714; document.querySelector('#previewPdfContainer').style.width = this.containerWidth + "px"; document.querySelector('#previewPdfContainer').style.height = this.containerHeight + "px";
}
new ResizeObserver(setContainerSizes).observe(myVFlex)