Comments (3)
Great question. The typical Angular way would be to do a $scope.$watch on your item or items in the scope. Example:
// two objects, converted to gridster items in the view via ng-repeat
$scope.items = [{},{}];
$scope.$watch('items', function(items){
// one of the items changed
}, true);
or
$scope.watch('items[0]', function(){
// item0 changed
}, true);
or
$scope.watch('items[0].sizeX', function(){
// item0 sizeX changed
}, true);
The third argument, true, is to make the watch based on the value of the object, rather than just matching the reference to the object.
The biggest challenge I've seen is knowing how to know when any if the items has changed while avoiding excessive calls to watch functions. It would be nice to have an event emitted when something changes, but only after all items in the grid have settled and stopped moving. If anyone else has ideas, they are welcome.
from angular-gridster.
Brilliant, mind putting this in the docs for others? If you don't have time I can make a pull request.
from angular-gridster.
I copied and pasted directly from this and committed. Feel free to enhance or suggest improvements. Thanks!
from angular-gridster.
Related Issues (20)
- Size limitation on very long grid (the limit is different depending on the browser) HOT 2
- Unable to clone the demo HOT 1
- Unable to clone demo HOT 1
- Gridster module error
- DragEnd event not fired when in iFrame (Chrome browser)
- Maintainer Needed. Please apply HOT 2
- Publish latest version in npm (0.13.15) HOT 1
- Overlap of widgets when max rows is set
- auto resize content of a grid
- angular.resize issue HOT 2
- wrong rowHeight ratio
- JQUERY Gridster Widgets Overlap Issue HOT 1
- Print page-breaks don't work
- fix container of gridster HOT 1
- How to link $scope between widgets
- angular 7 can use? HOT 1
- maxTop in 'angular-gridster/src/angular-gridster.js'
- Is there a way to change 4 corners of an item?
- create "white spaces" while dragging
- Attempting to add a new element and there is no armed behind it fails even though there is a space before it
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 angular-gridster.