-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Data table doesn't shrink when window is resized #1090
Comments
I am having this issue as well. The table should be responsive. |
I had a similar issue, but in conjunction with flexbox and the datatable scrollbars. Not sure if its relevant, but my problem was the fixed child width of the datatable. The ngx-datatable calculates a fixed width based on the available space of the parent element (i.e 100% of flexbox, lets say 1000px wide window) and applies an width attribute to the tablewrapper (width:1000px). But the flexbox wraps its content and therefore always includes its child elements (the tablewrapper) As soon as I increased the window size, the flexbox grew (100% windowsize, i.e. 1200px) and table wrapper recalculates its available space to 1200px, but as I decreased the window size, the flexbox kept its larger width (to wrap the table wrapper) and therefore it didnt forced the shrink on the datatable. I hot fixed it by adding an arbitrary width to the flexbox (for example width:1px, which gets overridden by the flexbox attributes) and the flexbox shrank accordingly, which let the datatable recalculate its available space accordingly. |
I am having same issue. adding arbitrary width didn't help |
Same issue here. |
Literally spent 45 minutes trying to figure this out. I am using flexbox and while adding arbitrary width did help out, I would hopefully like to see a fix soon. |
Having the same problem, can anybody help me out with some code-example? |
I found that adding |
I am having the same issue with ngx data table. When I expand my browser window, the columns seem to stretch fine, but when I make the browser window smaller, the columns don't spring back with the window. I have been fixing it for more than 2 days now. Any methods to get a work around? Or maybe I am better off with a different data table component? |
getting save issue when i collapsed and expand my sidebar menu. width should be shrink and stretch |
Invoke the below method on sidebar minimizer (click)="WindowResize($event)" WindowResize(e) { |
After 2 hours of trying, this is what did it! Thank you! |
I think that, this solution is very, very very heavy to apply in development, if you have differents component where you use the table, the performance about your app can see slow. |
I Think i solved the hard way. Just add these Lines in your CSS Rules :
This will keep the header and body of the table on a good shape. I recommend to wrap the datatable on a div using the |
I found the solution to the issue. Just use rxjs delay operator in ngOnit to call ngx-datatable's recalculate function. I implemented this on a button click so when that toggle button is clicked i emit a val ( can be anything) from my navService and subscribe to it in the component in which you are using the datatable. Use the snippet below in ngOnit. this.navService.testingSubject.pipe(delay(500)).subscribe((val) => { Thanks |
Hi, My ngx-datatable doesn't shrink and columns go out of the window when enlarge the browser window. I tried all methods described above. None worked. Because it is told resizing issue fixed, I updated datatable to its last version . But it didn't work as well. Do you have any other idea about how to solve this problem? Thanks. |
Seems like no one is going to fix this. I've updated 3rd party framework, which switched from their old grid to this one. I was excited about this. But now I can see a monster-markup-grid (look at source code in DevTools :) ) with pretty poor customization and ignored issues... |
Does not help.. |
I have resolved it by adding |
Hi folks! I need some help! I'm using a ngx-datatable 19.0.0, Angular version 11.1.0 and Material version 11.2.13. When I using props [columnMode]="'force'" directly in ngx-datatable, the page load correctelly and the columns fill the screen correctly. But if I resize the page anyway, the column does not fit and if I maximize the screen or return to the size the screen was initially and the column does not fit the page. If I use props [columnMode]="'standard'" the size remains unchanged at any page size, but it does not fill the entire page, which is how [columnMode]="'force'" does correctly. I applied all solucions in this issue and any works to me. Bellow there is a print the page with the defect: |
@lrochaoliveira I don't remember how I resolved the issue eventually and we don't use this component anymore. But I have some old code, please have a look - maybe it will help you or push to the right decision (I know, that it still looks like a workaround, but...)
|
Thanks, @alexandis ! I'm newbie in angular. How can I use this solution in my code? |
You need to add this directive to your table component, i.e. add P.S. If you still have difficulties with that - I might create some minimal test project at my side (or even better - a sandbox), try this code and share the link with you. Let me know if you prefer this way. |
@alexandis , if you could create some minimal test project at my side, I would be grateful! |
@lrochaoliveira ok - i will try to do that today later on. |
@lrochaoliveira please have a look. At least at my side this test grid resizes normally. But you might have a more complex scenario, in this case this code needs to be adjusted. I even don't remember the details and it was done for some old version of Swimlane Datatable, plus I had a newer Angular than you.... Maybe the code needs to be retrofitted now. |
Hi @alexandis ! Thanks a lot for your reply. It was awesome what you did! It worked partially to us. So we decided change this component to material table. |
@lrochaoliveira glad to hear that the code was of some use. You might want to consume a mutation observer in future for some your UI needs, it's really a powerful thing. BTW - we've eventually switched to a material table-based component too :) So I might share my experience with you if you have any problems there. |
Thanks @alexandis ! I"ll let you know. |
I'm submitting a ... (check one with "x")
Current behavior
When rendering the datatable in a view and not absolutely positioned, the initial width is set and making the window larger triggers a resize, but shrinking it does not.
Expected behavior
It would re-render the width for enlarging and shrinking window.
Reproduction of the problem
I'll try to get a plunker up but it's entirely possible that there something else causing this that is specific to my app.
What is the motivation / use case for changing the behavior?
Please tell us about your environment:
Mac, Chrome latest, Webstorm
Table version: 0.8.x
Latest
Angular version: 2.0.x
4.4
Browser: [all | Chrome XX | Firefox XX | IE XX | Safari XX | Mobile Chrome XX | Android X.X Web Browser | iOS XX Safari | iOS XX UIWebView | iOS XX WKWebView ]
Chrome
Language: [all | TypeScript X.X | ES6/7 | ES5]
The text was updated successfully, but these errors were encountered: