Comments (4)
@humblepie Can you provide us with an example of when such an issue is reproducible?
from igniteui-angularjs.
@kdinev The example I am providing actually demonstrates multiple issues with 2 way data binding.
- Add and Remove first item button will demonstrate the issue originally described.
- Add button demonstrates issue with unbound column using formula not being rendered when using grid.renderNewRow to add the new row. Status column is not being rendered.
from igniteui-angularjs.
@humblepie thanks a lot for the sample.
@mpavlinov who can take this and investigate?
from igniteui-angularjs.
The first issue is reproducing due to the fact of how both ng-click
and ig-grid
were designed.
ng-click
wraps its function in$apply
- change detection mechanism of
ig-grid
Change detection mechanism relies on the length of the data to figure out, whether the change is adding, deleting or updating a record. And if both of the changes - removing and adding a record are done, the grid actually considers this as an update(since the length of the new and the old data is equal).
At some point we may improve this changes recognition. But for know you have to use custom click directive, which won't trigger the digest cycle. This way you could trigger the digest cycle for each change and make the grid treat them correctly.
For the second one with the unbound values. Unbound values are not updated when changing the data source. You have to handle them manually with setUnboundValuesByPK API
I modified the attached sample to demonstrate, what I mean for both issues.
igniteui-angular-iggrid-modified.zip
from igniteui-angularjs.
Related Issues (20)
- igTree performance HOT 1
- exitEditMode after rebinding causes igGrid data to revert to old data HOT 4
- Angular JS Data Chart
- Error when setting datasource of combo editor provider of igGrid HOT 5
- Samples are broken
- igLayoutManager sample is not propertly working
- Error: cannot call methods on igGrid prior to initialization; attempted to call method 'destroy' HOT 1
- igTileManager sample is not loading correctly HOT 1
- Create igniteui-angularJS quickstart application HOT 1
- Help please HOT 2
- igCombo: setter method for the "mode" option HOT 1
- Update the npm package to match the updated repository name
- Can't type spaces (with space bar) in iggrid filter HOT 5
- Combo appends text after Shift-tabbed action
- Samples are broken on github.io HOT 1
- The igCombo directive misses a model.$isEmpty implementation
- Project build is failing
- Migrate protractor test to karma or enable them in github actions
- igCheckboxEditor does not update its model when ngModel is specified
- [igMap] Github pages sample is not shown HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from igniteui-angularjs.