我已将我的 ag-grid 版本从 7.2.0 升级到 v14.2.0。当我将 sizeColumnsToFit()
api 与 onGridReady
或 onGridSizeChanged
事件一起使用时,它可以工作,但它保留了不必要的水平滚动,可能是由于计算错误网格宽度。
这个问题(?)也可以在 ag-grid 的官方示例中看到,
https://www.ag-grid.com/javascript-grid-responsiveness/#example-example1
对于以前的版本,这在没有任何水平滚动的情况下完全可以正常工作。
当我手动调用 $scope.gridOptions.api.sizeColumnsToFit()
时,它会移除水平滚动条。
这是我的网格选项:
$scope.ag_grid_options = {
headerHeight: 50,
rowHeight: 50,
//rowModelType: 'virtual',
rowModelType: 'infinite',
rowBuffer: 0,
cacheOverflowSize: 1,
infiniteInitialRowCount: 1,
cacheBlockSize: 50,
paginationPageSize: 50,
//virtualPaging: true,
enableServerSideSorting: true,
enableSorting: false,
enableColResize: true,
angularCompileRows: true,
onGridSizeChanged: function (param) {
$scope.ag_grid_options.api.doLayout();
$scope.ag_grid_options.api.sizeColumnsToFit();
},
columnDefs: grid_column_definitions
};
我知道我可以使用属性 suppressHorizontalScroll= true。但我不想使用它,因为有了它,当用户手动调整列大小时滚动将不会出现。
最佳答案
我遇到了相同/相似的问题。根本问题是我在添加垂直滚动条之前调整了列的大小。要解决此问题,请在添加行后调整大小。即使这样,如果没有超时,它也可能无法工作
this.http.get('someEndPoint').subscribe(rows => {
this.rowData = rows;
setTimeout(()=>{params.api.sizeColumnsToFit()}, 50);
});
这可能与 OP 看到的症状不同,但可能对其他人有用。
关于javascript - 尽管在 ag-grid 中使用了 sizeColumnsToFit,但不必要的水平滚动条出现了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47454302/
我正在尝试为一个对象编写OOjavascript,该对象具有昂贵的初始化过程,完成后会回调一个函数。问题在于调用者需要在回调例程中使用同一对象的函数,而该对象尚不存在://ctorforfooobjectfunctionfoo(callback){//doslowinitializationhere..//callbackwhendonecallback();};foo.prototype=function(){return{//doStuffmethoddoStuff:function(){alert('stuffdone');}};}();//instantiatethefooob
这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:HowdoIoutputanISO-8601formattedstringinJavascript?如果我有一个以毫秒为单位表示日期的整数,将其转换为iso格式的语法是什么?
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我通常会看到版本1,但我从事的一些开源项目使用版本2,而我过去也使用过版本3。有没有人有更优雅的解决方案,也许是更具可扩展性的解决方案?版本1:vartext1='thisismyscript\'scontent';版本2:Thisismycontentvartext1=$('#text1').html();版本3:vartext1=$('#text1'
有一些算法可以“非常好”地解决问题,前提是“非常好”意味着最小化浮点算术运算的数量以支持整数算术。以Bresenham'slinealgorithm为例为了弄清楚要填充哪些像素以便在Canvas上画一条线:这个人几乎只用了一些简单的整数运算就使整个过程变得可行。这种事情在很多情况下显然是好的。但是,在javascript中需要大量float学运算的操作值得担心吗?我知道就语言规范而言,一切都几乎是十进制数。我想知道是否实际上尝试让事情尽可能接近整数是否值得——浏览器是否进行了优化以使其值得? 最佳答案 您可以在javascript中
有没有办法使用YoutubeAPI播放视频直到视频中的某个点然后暂停? 最佳答案 我修改了YouTubePlayerAPIReferenceforiframeEmbeds中的代码在一定秒数后暂停播放。Demo代码通过等待onPlayerStateChange事件来工作。当事件触发时,它会检查事件以查看它是否是PLAYING事件。如果是,它会计算从当前时间(getCurrentTime()方法)到所需暂停点(硬编码为stopPlayAt变量)的剩余时间。它设置一个Javascript计时器来等待该差异,然后向API传递一个命令以暂停视
我有一个客户想要为用户提供从列表中最多选择5个附加选项的选项。我喜欢Chosen.js的概念,但如何限制选择?我想一种解决方案是使用onChange来计算所选的数字,然后禁用剩余的数字,但是有没有更简洁的解决方案? 最佳答案 Chosen提供了一个max_selected_options来允许你这样做:$(".chzn-select").chosen({max_selected_options:5}); 关于javascript-Chosen.js-是否可以限制所选项目的数量?,我们在S
我知道IE8很麻烦,但我从未见过它给我带来如此麻烦。我想要做的就是定义一个Javascript对象,它会导致错误,停止在页面上运行所有脚本。错误是“预期的标识符、字符串或数字”,表明问题发生在我在下面定义属性“类”的地方。我见过无数的脚本都是这样定义对象的,那么为什么IE8会吐槽这个呢?我将违规代码隔离到此。将它单独放在HTML页面的头部并在IE8中运行它会导致我看到的问题。varatts={class:"trigger"}; 最佳答案 通过用引号引起来定义使用适当的数据类型,"class"
考虑以下代码-varMyObjectModel=function(myObject){varself=this;self.myNumber1=ko.observable(myObject.number1).trimmed();self.myNumber2=ko.observable(myObject.number2).trimmed();我想扩展myNumber1和myNumber2,以添加knockoutvalidation,以便在两者均为空时抛出错误,并在其中一个有值时保持正常。知道如何实现这一目标吗? 最佳答案 您可以使用ko
问题描述有的用户在使用下载器调试带有ILA的工程时,出现某些异常情况,目前已知的异常有:(1)下载过程中报错,而且底部TclConsole出现大量报错信息Tcl报错信息,从第三行可知,系统提示降低速率,但是未具体说明降低哪里的速率。(2)点击开始采样后,不出波形也无任何报错信息(3)开始采样后,不采集或采集的波形不变化,且底部的TclConsole有报错(4)开始采样后,采集失败并且底部TclConsole出现大量报错信息(5)连接已烧录ILA程序的开发板时,出现连接不上或者连接上了,但是ILA设备显示不全的问题原因这些错误的出现跟两个因素有关:(1)下载器的Jtag接口的TCK速率,也可简单
我正在尝试在Java程序中使用Javascript编写脚本。我还没有找到在Javascript中遍历Java集合的方法。如果我为集合调用iterator()方法,我得到的是方法名称而不是元素。这是一个示例代码:functiongetValue(row,components){varapartment=components.get(0);varrooms=apartment.getRooms();for(varroominrooms.iterator()){println(room);}returnrooms.toString();}apartment.getRooms()返回房间集合。