如何在改变vuejs后得到div的宽度

问题描述 投票:1回答:1

我试图根据另一个div改变div的宽度。

enter image description here

上面的滚动是div,宽度将根据下面的表宽度变化。

我在Vue中将此方法实现为mixin。

    Vue.mixin({
      methods: {
        setScrollBar: () => {
          Vue.nextTick().then(function () {
            let tableWidth = document.querySelector("table.vuetable").offsetWidth;
            let tableWrapper = document.querySelector("div.vuetable-body-wrapper").offsetWidth;
            console.log(tableWidth)
            console.log(tableWrapper)

            document.querySelector("div.top-horizontal-scroll").style.width = tableWidth + "px";
            document.querySelector("div.top-scrollbar").style.width = tableWrapper + "px"
          });
        }
      }
})

当左上角的按钮单击时,要关闭菜单,它会给出表格的宽度,但只需单击,我想在完全更改后获得表格的宽度。

首先,tableWidth和tableWrapper分别为2714和1677像素。点击后,它应该改为2714和1877。

但是在点击时,它会给出最后一个宽度,而不是更改的宽度。

在菜单上单击我已设置此方法

<script>
export default {
  methods: {
    setScroll()  {
      console.log("called")
      this.$nextTick(function() {
        this.setScrollBar()
      });
    }
  }
}
</script>

这被调用,但每次点击宽度是第一个没有改变的。

enter image description here

css vue.js vuejs2
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.