madmax983 / lightning-data-grid Goto Github PK
View Code? Open in Web Editor NEWA data grid for Lightning Component Framework
License: MIT License
A data grid for Lightning Component Framework
License: MIT License
Access Check Failed! AttributeSet.get(): attribute 'columnName' of Component 'Cell' is not visible
I believe it is 'Column' instead of 'columnName'?
Right now even if a grid has no hierarchy, the grid will run its algos to determine the children structure. Should provide a config to avoid that and have a perf improvement when using the grid for non-tree situations.
<aura:iteration items="{!v.additionalView}" var="item" indexVar="index">
additionalView array is missing
I suppose this is a flavor of an Enhancement Request, but I'm curious if you had thoughts around how a "Save" button would work here. My first thought is to loop through the rowDatas and look for dirty, but the way it's stored key'd by columnName, it seems like a lot of effort to loop through every column name on every row to check for a dirty flag. I haven't done any performance tests with that yet, so it's entirely possible that it's not a factor; even at large data volumes, but my instinct is that it would be slow.
I'm going to try a few things along that route, but I thought I'd float this for discussion.
Another thought involves using some sort of dataProviderComponent that is wired into each cell (row maybe?), and has direct access to shared dataStore (via the window? --- similar to your redux store component setup). I suppose it would also be possible to leave the store at the table level and communicate changes by events, but my experience in the framework gives me a bad feeling about that. (Speed wise, and falling into the nightmare of keeping attributes/data in sync between multiple components.)
A configurable global search in the toolbar.
Configurable inline editing for the grid.
The grid should expose a public method that allows new rows to be added.
Make an auradoc, and get some examples running to use with the new Component Reference Suite.
Deployment Started
Status: Queued
Status: InProgress
Status: Completed
Deployment Complete
Failures:
package.xml(jasmineReporter):An object 'jasmineReporter' of type StaticResource was named in package.xml, but was not found in zipped directory
package.xml(jasmine):An object 'jasmine' of type StaticResource was named in package.xml, but was not found in zipped directory
package.xml(exampleData2):An object 'exampleData2' of type StaticResource was named in package.xml, but was not found in zipped directory
package.xml(Tests):An object 'Tests' of type AuraDefinitionBundle was named in package.xml, but was not found in zipped directory
package.xml(testutil):An object 'testutil' of type StaticResource was named in package.xml, but was not found in zipped directory
package.xml(lodash):An object 'lodash' of type StaticResource was named in package.xml, but was not found in zipped directory
package.xml(lightningDataGridTests):An object 'lightningDataGridTests' of type StaticResource was named in package.xml, but was not found in zipped directory
package.xml(jasmineboot):An object 'jasmineboot' of type StaticResource was named in package.xml, but was not found in zipped directory
package.xml(BaseTestRunnerCmp):An object 'BaseTestRunnerCmp' of type AuraDefinitionBundle was named in package.xml, but was not found in zipped directory
A configuration option should enable users to drag and resort columns.
Currently, the Deploy to Salesforce provided with DX requires a dev hub. Provide the converted DX metadata as a hook for https://github.com/afawcett/githubsfdeploy for deployment without a dev hub,
Currently, child rows render with the same columns as the rest of the grid, which works great for homogeneous hierarchies (ex. Parent Account and Children Accounts).
Need the ability to render a different set of columns for children rows so heterogeneous hierarchies can be represented (ex. Account and Contact).
When handleChildToggle gets called and splices in children for rendering, it doesn't respect previously expanded child rows.
As a user I want to select a row (or multiple rows), and then hit a button and have some sort of action performed on the row selected.
This should be controlled as a config value on the grid that determines whether the grid is single row selectable, multi-row selectable, or not selectable at all.
Degraded functionality in Firefox:
Eliminate the aura:if used in the cell component. Over a large set of data this will have a big performance impact.
Looks like this broke with the changes introduced in #32
Problems with the current infinite scrolling implementation:
Performance is okay, but not great. I want it to be great. Taking notes from React-Virtualized, as that has nice set of optimizations that should theoretically carry over.
Using mousewheel event works nice on desktop, but is obviously right out on mobile/Salesforce1. Could bind on mousetouch as well, but is exhibits real stutter without doing some improvements. Right now I am using the Load More button, but that is broken with the latest changes.
Hi Mark, I will like to use and contribute to the component, however I couldn't find a license to the component, can you add a license file?
When trying to update data attribute and calling init() again Grid gets stuck loading
Filtering on columns.
I caught this is in sanity testing after the re-work for sfdx. We are keeping track of the state of the hierarchy in the hierarchy attribute now so that child rows get proper virtualization. The expanded state of the child row is properly being kept track of when a row instantiates, but the chevron isn't respecting this.
New issue that has cropped up:
If you toggle a child row, then scroll down and scroll back up, the grid is maintaining the state of the hierarchy as expected. However, the lightning:buttonIcon for chevron right and chevron down get rendered rotated 90 degrees.
This is just cropping up in Winter '18.
The Grid should be able to support the lightning:RecordFormView (and the lightning:RecordFormEdit coming in Spring '18) components for decorators and editors.
Test are breaking in Winter 18.
Sorting on columns
As a implementer of this grid, I would like to decide whether I have virtual scrolling or pagination. There are use cases where pagination is a better UX.
We already have rowsDisplayed and the dataset, so should be relatively easy to extrapolate the number of pages and set up pagination.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.