在mounted写 因为我是html标签可以不用加 el(如果是html标签就不用加)
offsetWidth //返回元素的宽度(包括元素宽度、内边距和边框,不包括外边距)
offsetHeight //返回元素的高度(包括元素高度、内边距和边框,不包括外边距)
clientWidth //返回元素的宽度(包括元素宽度、内边距,不包括边框和外边距)
clientHeight //返回元素的高度(包括元素高度、内边距,不包括边框和外边距)
stylewidth //返回元素的宽度(包括元素宽度,不包括内边距、边框和外边距)
styleheight //返回元素的高度(包括元素高度,不包括内边距、边框和外边距)
scrollWidth //返回元素的宽度(包括元素宽度、内边距和溢出尺寸,不包括边框和外边距),无溢出的情况,与clientWidth相同
scrollHeigh //返回元素的高度(包括元素高度、内边距和溢出尺寸,不包括边框和外边距),无溢出的情况,与clientHeight相同
先设置元素的ref,如 <div style="height: 500px" ref="tablewrap" ></div>,要获取该元素高度,必须先给该元素设置css高度
再用 windowgetComputedStyle(this$refstablewrap)height 获取
注意:用this$refs获取dom元素高度,必须在mounted钩子中,如下:
mounted() {
consolelog(windowgetComputedStyle(this$refstablewrap)height)
}
给element表格设置动态高度,就可以用上述方法
在data中定义变量
最后,在mounted钩子中设置表格的高度
在template中定义ref,与setup中命名要一样
在setup中要定义ref与template中名字一样,在onMounted中去 *** 作元素,因为setup是相当于create,那是页面还没渲染,所以要在onmounted中去 *** 作。要记得将元素return 不然没效果
在vue的开发过程中,常常需要 *** 作表格元素,比如数据的分页呈现,某行数据的修改、删除等 *** 作,不可避免的需要 *** 作某行数据,本文描述了这一过程
首先,我们全局引入ant-design-vue,本文简称为antd,为蚂蚁金服推出的一款UI组件,在mainjs中添加即可。
下面我们使用antd的表格组件,在dom元素中定义表格相关属性及数据的来源信息等。
dataSource为数据的来源,格式为数组,我们通过ajax的方式请求后台获取数据。
列信息需要和返回对象的属性对应,如果有些列不是对象的属性,比如 *** 作列,可以通过增加scopedSlots的方式。
名称为action的插槽(slot),需要在dom元素中进行设置,添加在a-table的子元素中。slot-scope="text,record"中的record就是这行的数据值。
我们通过F12进行调试,将record的信息进行打印,不难发现,record确实记录了这行的数据信息
直接在标签中添加click事件(@click=fn),然后在vue实例中的(methods)配置项里添加方法fn,实现你的功能。这样不行吗?vue框架不是不能用原生js获取dom元素,只是用框架就是为了避免 *** 作dom元素
以上就是关于vue获取dom元素的宽高全部的内容,包括:vue获取dom元素的宽高、vue 中用this.$refs获取dom元素高度,给element表格设置动态高度、vue3 setup中获取元素高度等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)