制表符根据屏幕分辨率设置列布局

问题描述

我正在尝试最新的tabulator,并且需要帮助。 有人可以显示正确的方法如何将制表符布局从“ fitData”更改为“ fitColumns” 根据屏幕宽度? 我要做的就是屏幕宽度检测:

$(document).ready(function(){
  $( window ).resize(function() {
      var width = $( window ).width();
      if(width > 800) {
          console.log("size > 800");
          userTable.options.layout = "fitColumns";
          userTable.redraw(true);
      }
      if(width < 800) {
          console.log("size < 800");
          userTable.options.layout = "fitData";
          userTable.redraw(true);
      }
  }); });

但是此代码不起作用! 有人可以帮忙吗? 非常感谢!

解决方法

一旦表格已加载,您将无法更改布局选项,您必须销毁该表格并重新加载

最好的选择是在首次创建表时执行此操作:

var table = new Tabulator("#example-table",{
    layout:window.innerWidth > 800 ? "fitColumns" : "fitData",columns:[],});