mankindsoftware / angular-isotope

AngularJS directives to easily work with JQuery Isotope.
http://mankindsoftware.github.io/angular-isotope
204 stars 82 forks source link

Is it possible to bind angular-isotope later? #9

Open nickeblewis opened 10 years ago

nickeblewis commented 10 years ago

Question #1

Is there a way of somehow delaying the initialisation of the isotope? The reason being is that I am loading data from Firebase into my $scope, which may take a couple of seconds at the start. The isotope is applied too early. My cards appear overlayed on top

Can I bind it later? If so how? image

Question #2

When my firebase data updates the scope does too. Items that update move across to the top right hand corner of my grid, leaving a gap where they used to be.

image

Please advise?

mankindsoftware commented 10 years ago

Hi, For your first issue, I looked over the code a found a spot where an 'iso-ignore="true"' attribute/value combo would not initialize Isotope. And I even have a service to store any configuration events from the "opt-kind" directive that may occur before initialization. Unfortunately, I didn't include a mechanism to actually do an initialization later. Doh! But it's a great idea and I've already coded everything up. "iso-ignore=true" will be paired with an event "iso-initialize". I'll let you know when it is released.

As for the second issue, I believe I have fixed it in my last release. Items were being removed from the DOM but not Isotope's internal structure. Now a call to Isotope to 'remove' the object is made.

Mark

I

On Fri, Mar 14, 2014 at 4:57 AM, Nick Lewis notifications@github.comwrote:

Question #1 https://github.com/mankindsoftware/angular-isotope/issues/1

Is there a way of somehow delaying the initialisation of the isotope? The reason being is that I am loading data from Firebase into my $scope, which may take a couple of seconds at the start. The isotope is applied too early. My cards appear overlayed on top

Can I bind it later? If so how? [image: image]https://f.cloud.github.com/assets/440732/2420362/9d083bc4-ab6f-11e3-9feb-4f6f3a2cece3.png

Question #2 https://github.com/mankindsoftware/angular-isotope/issues/2

When my firebase data updates the scope does too. Items that update move across to the top right hand corner of my grid, leaving a gap where they used to be.

[image: image]https://f.cloud.github.com/assets/440732/2420374/dd2d1fbc-ab6f-11e3-9fd5-fd8e5e8f6238.png

Please advise?

Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9 .

nickeblewis commented 10 years ago

Hi Mark

Thanks a lot. I may share my project with you, so that you can see it in action. In any case please do let me know when it goes to release..

Thanks

Nick

On Fri, Mar 14, 2014 at 3:49 PM, Mark Hall notifications@github.com wrote:

Hi, For your first issue, I looked over the code a found a spot where an 'iso-ignore="true"' attribute/value combo would not initialize Isotope. And I even have a service to store any configuration events from the "opt-kind" directive that may occur before initialization. Unfortunately, I didn't include a mechanism to actually do an initialization later. Doh! But it's a great idea and I've already coded everything up. "iso-ignore=true" will be paired with an event "iso-initialize". I'll let you know when it is released.

As for the second issue, I believe I have fixed it in my last release. Items were being removed from the DOM but not Isotope's internal structure. Now a call to Isotope to 'remove' the object is made.

Mark

I

On Fri, Mar 14, 2014 at 4:57 AM, Nick Lewis <notifications@github.com

wrote:

Question #1 <https://github.com/mankindsoftware/angular-isotope/issues/1

Is there a way of somehow delaying the initialisation of the isotope? The reason being is that I am loading data from Firebase into my $scope, which may take a couple of seconds at the start. The isotope is applied too early. My cards appear overlayed on top

Can I bind it later? If so how? [image: image]< https://f.cloud.github.com/assets/440732/2420362/9d083bc4-ab6f-11e3-9feb-4f6f3a2cece3.png

Question #2 <https://github.com/mankindsoftware/angular-isotope/issues/2

When my firebase data updates the scope does too. Items that update move across to the top right hand corner of my grid, leaving a gap where they used to be.

[image: image]https://f.cloud.github.com/assets/440732/2420374 /dd2d1fbc-ab6f-11e3-9fd5-fd8e5e8f6238.png

Please advise?

Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9> .

Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37662877 .

---Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

mankindsoftware commented 10 years ago

I'd love to see what you're up to with this.

The code is released. v 0.1.10.

You can take a look at the demo (advanced) in the code to see how it works. The attribute is "iso-use-init-event='true'" and you can emit an "iso-init" event to get things going. Hope this what you needed.

Mark Allen Hall

On Fri, Mar 14, 2014 at 9:09 AM, Nick Lewis notifications@github.comwrote:

Hi Mark

Thanks a lot. I may share my project with you, so that you can see it in action. In any case please do let me know when it goes to release..

Thanks

Nick

On Fri, Mar 14, 2014 at 3:49 PM, Mark Hall notifications@github.com wrote:

Hi, For your first issue, I looked over the code a found a spot where an 'iso-ignore="true"' attribute/value combo would not initialize Isotope. And I even have a service to store any configuration events from the "opt-kind" directive that may occur before initialization. Unfortunately, I didn't include a mechanism to actually do an initialization later. Doh! But it's a great idea and I've already coded everything up. "iso-ignore=true" will be paired with an event "iso-initialize". I'll let you know when it is released.

As for the second issue, I believe I have fixed it in my last release. Items were being removed from the DOM but not Isotope's internal structure. Now a call to Isotope to 'remove' the object is made.

Mark

I

On Fri, Mar 14, 2014 at 4:57 AM, Nick Lewis <notifications@github.com

wrote:

Question #1 < https://github.com/mankindsoftware/angular-isotope/issues/1

Is there a way of somehow delaying the initialisation of the isotope? The reason being is that I am loading data from Firebase into my $scope, which may take a couple of seconds at the start. The isotope is applied too early. My cards appear overlayed on top

Can I bind it later? If so how? [image: image]<

https://f.cloud.github.com/assets/440732/2420362/9d083bc4-ab6f-11e3-9feb-4f6f3a2cece3.png

Question #2 < https://github.com/mankindsoftware/angular-isotope/issues/2

When my firebase data updates the scope does too. Items that update move across to the top right hand corner of my grid, leaving a gap where they used to be.

[image: image]https://f.cloud.github.com/assets/440732/2420374 /dd2d1fbc-ab6f-11e3-9fd5-fd8e5e8f6238.png

Please advise?

Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9> .

Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37662877

.

---Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37665230 .

nickeblewis commented 10 years ago

Hi Mark

That sounds fantastic, just updating my source...

Regards,

Nick

On Fri, Mar 14, 2014 at 5:09 PM, Mark Hall notifications@github.com wrote:

I'd love to see what you're up to with this.

The code is released. v 0.1.10.

You can take a look at the demo (advanced) in the code to see how it works. The attribute is "iso-use-init-event='true'" and you can emit an "iso-init" event to get things going. Hope this what you needed.

Mark Allen Hall

On Fri, Mar 14, 2014 at 9:09 AM, Nick Lewis <notifications@github.com

wrote:

Hi Mark

Thanks a lot. I may share my project with you, so that you can see it in action. In any case please do let me know when it goes to release..

Thanks

Nick

On Fri, Mar 14, 2014 at 3:49 PM, Mark Hall notifications@github.com wrote:

Hi, For your first issue, I looked over the code a found a spot where an 'iso-ignore="true"' attribute/value combo would not initialize Isotope. And I even have a service to store any configuration events from the "opt-kind" directive that may occur before initialization. Unfortunately, I didn't include a mechanism to actually do an initialization later. Doh! But it's a great idea and I've already coded everything up. "iso-ignore=true" will be paired with an event "iso-initialize". I'll let you know when it is released.

As for the second issue, I believe I have fixed it in my last release. Items were being removed from the DOM but not Isotope's internal structure. Now a call to Isotope to 'remove' the object is made.

Mark

I

On Fri, Mar 14, 2014 at 4:57 AM, Nick Lewis <notifications@github.com

wrote:

Question #1 < https://github.com/mankindsoftware/angular-isotope/issues/1

Is there a way of somehow delaying the initialisation of the isotope? The reason being is that I am loading data from Firebase into my $scope, which may take a couple of seconds at the start. The isotope is applied too early. My cards appear overlayed on top

Can I bind it later? If so how? [image: image]<

https://f.cloud.github.com/assets/440732/2420362/9d083bc4-ab6f-11e3-9feb-4f6f3a2cece3.png

Question #2 < https://github.com/mankindsoftware/angular-isotope/issues/2

When my firebase data updates the scope does too. Items that update move across to the top right hand corner of my grid, leaving a gap where they used to be.

[image: image]https://f.cloud.github.com/assets/440732/2420374 /dd2d1fbc-ab6f-11e3-9fd5-fd8e5e8f6238.png

Please advise?

Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9> .

Reply to this email directly or view it on GitHub<

https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37662877

.

---Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37665230

.

Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37671920 .

---Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

nickeblewis commented 10 years ago

Hi Mark,

Thanks a lot, and that has helped me a lot.

I have got it working a lot better but there is one minor thing bugging me still.

Go to http://www.farnboroughguide.com

I have got the initial load to work smoothly now, as you will see that it works, which it wasn't previously. I set the iso-use-init-event="true" in my HTML container and then $scope.$emit('iso-init') to apply the isotope from my controller once my Firebase data has loaded into my scope.

If you click on an item's heading and then click on save on the page that appears next, you will notice that the grid is re-ordered and still works fine. (don't panic, none of this is live customer data yet)

Now if you have two windows open with the application running, change one item as in the previous step and then switch to view the other window (or tab). It looks like the updated item has vanished. It has in fact moved behind the first item in the top corner of the grid or so it would seem. Thankfully one of my original problems where a space would be left behind has been fixed.

Is there anything I can or should do to get around this? Something I've missed?

Regards,

Nick Lewis

On Fri, Mar 14, 2014 at 7:32 PM, Nick Lewis nickeblewis@gmail.com wrote:

Hi Mark

That sounds fantastic, just updating my source...

Regards,

Nick

On Fri, Mar 14, 2014 at 5:09 PM, Mark Hall notifications@github.comwrote:

I'd love to see what you're up to with this.

The code is released. v 0.1.10.

You can take a look at the demo (advanced) in the code to see how it works. The attribute is "iso-use-init-event='true'" and you can emit an "iso-init" event to get things going. Hope this what you needed.

Mark Allen Hall

On Fri, Mar 14, 2014 at 9:09 AM, Nick Lewis <notifications@github.com

wrote:

Hi Mark

Thanks a lot. I may share my project with you, so that you can see it in action. In any case please do let me know when it goes to release..

Thanks

Nick

On Fri, Mar 14, 2014 at 3:49 PM, Mark Hall notifications@github.com wrote:

Hi, For your first issue, I looked over the code a found a spot where an 'iso-ignore="true"' attribute/value combo would not initialize Isotope. And I even have a service to store any configuration events from the "opt-kind" directive that may occur before initialization. Unfortunately, I didn't include a mechanism to actually do an initialization later. Doh! But it's a great idea and I've already coded everything up. "iso-ignore=true" will be paired with an event "iso-initialize". I'll let you know when it is released.

As for the second issue, I believe I have fixed it in my last release. Items were being removed from the DOM but not Isotope's internal structure. Now a call to Isotope to 'remove' the object is made.

Mark

I

On Fri, Mar 14, 2014 at 4:57 AM, Nick Lewis <notifications@github.com

wrote:

Question #1 < https://github.com/mankindsoftware/angular-isotope/issues/1

Is there a way of somehow delaying the initialisation of the isotope? The reason being is that I am loading data from Firebase into my $scope, which may take a couple of seconds at the start. The isotope is applied too early. My cards appear overlayed on top

Can I bind it later? If so how? [image: image]<

https://f.cloud.github.com/assets/440732/2420362/9d083bc4-ab6f-11e3-9feb-4f6f3a2cece3.png

Question #2 < https://github.com/mankindsoftware/angular-isotope/issues/2

When my firebase data updates the scope does too. Items that update move across to the top right hand corner of my grid, leaving a gap where they used to be.

[image: image]https://f.cloud.github.com/assets/440732/2420374 /dd2d1fbc-ab6f-11e3-9fd5-fd8e5e8f6238.png

Please advise?

Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9> .

Reply to this email directly or view it on GitHub<

https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37662877

.

---Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37665230

.

Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37671920 .

--- Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

---Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

nickeblewis commented 10 years ago

Hi Mark

Looks like someone is having a play with the Farnborough site. I'm guessing it's probably you and that's cool!

Otherwise someone else is, hmm...

Regards

Nick On 14 Mar 2014 21:18, "Nick Lewis" nickeblewis@gmail.com wrote:

Hi Mark,

Thanks a lot, and that has helped me a lot.

I have got it working a lot better but there is one minor thing bugging me still.

Go to http://www.farnboroughguide.com

I have got the initial load to work smoothly now, as you will see that it works, which it wasn't previously. I set the iso-use-init-event="true" in my HTML container and then $scope.$emit('iso-init') to apply the isotope from my controller once my Firebase data has loaded into my scope.

If you click on an item's heading and then click on save on the page that appears next, you will notice that the grid is re-ordered and still works fine. (don't panic, none of this is live customer data yet)

Now if you have two windows open with the application running, change one item as in the previous step and then switch to view the other window (or tab). It looks like the updated item has vanished. It has in fact moved behind the first item in the top corner of the grid or so it would seem. Thankfully one of my original problems where a space would be left behind has been fixed.

Is there anything I can or should do to get around this? Something I've missed?

Regards,

Nick Lewis

On Fri, Mar 14, 2014 at 7:32 PM, Nick Lewis nickeblewis@gmail.com wrote:

Hi Mark

That sounds fantastic, just updating my source...

Regards,

Nick

On Fri, Mar 14, 2014 at 5:09 PM, Mark Hall notifications@github.comwrote:

I'd love to see what you're up to with this.

The code is released. v 0.1.10.

You can take a look at the demo (advanced) in the code to see how it works. The attribute is "iso-use-init-event='true'" and you can emit an "iso-init" event to get things going. Hope this what you needed.

Mark Allen Hall

On Fri, Mar 14, 2014 at 9:09 AM, Nick Lewis <notifications@github.com

wrote:

Hi Mark

Thanks a lot. I may share my project with you, so that you can see it in action. In any case please do let me know when it goes to release..

Thanks

Nick

On Fri, Mar 14, 2014 at 3:49 PM, Mark Hall notifications@github.com wrote:

Hi, For your first issue, I looked over the code a found a spot where an 'iso-ignore="true"' attribute/value combo would not initialize Isotope. And I even have a service to store any configuration events from the "opt-kind" directive that may occur before initialization. Unfortunately, I didn't include a mechanism to actually do an initialization later. Doh! But it's a great idea and I've already coded everything up. "iso-ignore=true" will be paired with an event "iso-initialize". I'll let you know when it is released.

As for the second issue, I believe I have fixed it in my last release. Items were being removed from the DOM but not Isotope's internal structure. Now a call to Isotope to 'remove' the object is made.

Mark

I

On Fri, Mar 14, 2014 at 4:57 AM, Nick Lewis < notifications@github.com

wrote:

Question #1 < https://github.com/mankindsoftware/angular-isotope/issues/1

Is there a way of somehow delaying the initialisation of the isotope? The reason being is that I am loading data from Firebase into my $scope, which may take a couple of seconds at the start. The isotope is applied too early. My cards appear overlayed on top

Can I bind it later? If so how? [image: image]<

https://f.cloud.github.com/assets/440732/2420362/9d083bc4-ab6f-11e3-9feb-4f6f3a2cece3.png

Question #2 < https://github.com/mankindsoftware/angular-isotope/issues/2

When my firebase data updates the scope does too. Items that update move across to the top right hand corner of my grid, leaving a gap where they used to be.

[image: image]https://f.cloud.github.com/assets/440732/2420374 /dd2d1fbc-ab6f-11e3-9fd5-fd8e5e8f6238.png

Please advise?

Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9> .

Reply to this email directly or view it on GitHub<

https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37662877

.

---Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37665230

.

Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37671920 .

--- Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

---Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

mankindsoftware commented 10 years ago

HI, I kind of really enjoyed clicking around your website, figuring out what's going on with my code. There's something about performing an action on one browser and having it show up in another that makes me smile.

The console shows that I introduced a minor bug, but it has nothing to do with what's going on with what you're seeing.

When an "orderBy" is applied in the ng-repeat, the array returned by Angular is a new copy. And the items from the original array are left orphaned in Isotopes' own data storage. So you are seeing the original layout, which no longer has anything to do with the current array, plus any new items, which are in the priority position underneath.. A simple call to isotope.isotope() will reload the new array. But you don't have access to that through angular-isotope right now so I'll make an event for it.

Also, have a look at the new "track by" feature of "ng-repeat". I use it in my code's "advanced" demo. Angular keeps track of any (unique) key you give it for each item (like "name"), and when a list is replaced, rather than destroying the corresponding element, reuses it for any array item with the same name. In this way, Isotope is working with the same element as well, even across "orderBy", (I think, though untested yet, But I'm pretty sure.) and everybody keeps in sync.

I hope I'm not sounding pedagogical, I just really enjoy working with angular and isotope and like seeing them used. I'll give you a heads up when I'm done.

Mark

On Fri, Mar 14, 2014 at 2:19 PM, Nick Lewis notifications@github.comwrote:

Hi Mark,

Thanks a lot, and that has helped me a lot.

I have got it working a lot better but there is one minor thing bugging me still.

Go to http://www.farnboroughguide.com

I have got the initial load to work smoothly now, as you will see that it works, which it wasn't previously. I set the iso-use-init-event="true" in my HTML container and then $scope.$emit('iso-init') to apply the isotope from my controller once my Firebase data has loaded into my scope.

If you click on an item's heading and then click on save on the page that appears next, you will notice that the grid is re-ordered and still works fine. (don't panic, none of this is live customer data yet)

Now if you have two windows open with the application running, change one item as in the previous step and then switch to view the other window (or tab). It looks like the updated item has vanished. It has in fact moved behind the first item in the top corner of the grid or so it would seem. Thankfully one of my original problems where a space would be left behind has been fixed.

Is there anything I can or should do to get around this? Something I've missed?

Regards,

Nick Lewis

On Fri, Mar 14, 2014 at 7:32 PM, Nick Lewis nickeblewis@gmail.com wrote:

Hi Mark

That sounds fantastic, just updating my source...

Regards,

Nick

On Fri, Mar 14, 2014 at 5:09 PM, Mark Hall <notifications@github.com wrote:

I'd love to see what you're up to with this.

The code is released. v 0.1.10.

You can take a look at the demo (advanced) in the code to see how it works. The attribute is "iso-use-init-event='true'" and you can emit an "iso-init" event to get things going. Hope this what you needed.

Mark Allen Hall

On Fri, Mar 14, 2014 at 9:09 AM, Nick Lewis <notifications@github.com

wrote:

Hi Mark

Thanks a lot. I may share my project with you, so that you can see it in action. In any case please do let me know when it goes to release..

Thanks

Nick

On Fri, Mar 14, 2014 at 3:49 PM, Mark Hall notifications@github.com wrote:

Hi, For your first issue, I looked over the code a found a spot where an 'iso-ignore="true"' attribute/value combo would not initialize Isotope. And I even have a service to store any configuration events from the "opt-kind" directive that may occur before initialization. Unfortunately, I didn't include a mechanism to actually do an initialization later. Doh! But it's a great idea and I've already coded everything up. "iso-ignore=true" will be paired with an event "iso-initialize". I'll let you know when it is released.

As for the second issue, I believe I have fixed it in my last release. Items were being removed from the DOM but not Isotope's internal structure. Now a call to Isotope to 'remove' the object is made.

Mark

I

On Fri, Mar 14, 2014 at 4:57 AM, Nick Lewis < notifications@github.com

wrote:

Question #1 < https://github.com/mankindsoftware/angular-isotope/issues/1

Is there a way of somehow delaying the initialisation of the isotope? The reason being is that I am loading data from Firebase into my $scope, which may take a couple of seconds at the start. The isotope is applied too early. My cards appear overlayed on top

Can I bind it later? If so how? [image: image]<

https://f.cloud.github.com/assets/440732/2420362/9d083bc4-ab6f-11e3-9feb-4f6f3a2cece3.png

Question #2 < https://github.com/mankindsoftware/angular-isotope/issues/2

When my firebase data updates the scope does too. Items that update move across to the top right hand corner of my grid, leaving a gap where they used to be.

[image: image]https://f.cloud.github.com/assets/440732/2420374 /dd2d1fbc-ab6f-11e3-9fd5-fd8e5e8f6238.png

Please advise?

Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9> .

Reply to this email directly or view it on GitHub<

https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37662877

.

---Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

Reply to this email directly or view it on GitHub<

https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37665230

.

Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37671920

.

--- Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

---Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37697666 .

mankindsoftware commented 10 years ago

Yes, it was me. Hope I didn't overload the system or break anything or cost you many. Your's was the first "in-the-wild" application I could look at, and I wanted to see how I could make the competing DOM-as-view approach of Angular and DOM-as-model approach of Isotope work together in terms of the filters.

One thing I noticed was that the priority item of the first site was put at the end on the second site.

An isotope() command will make your list adjust correctly. I checked in new code to allow you to make use of the method event. On the "isotope" container, add iso-method-subscribe="my-iso-method" as an attribute. Then when you get a new list , do a $timeout(function() { $scope.$emit(my-iso-method, {name:null, params:null})) to refresh. You can experiment with other isotope methods: {name: 'reLayout', params:null} etc. I still have to do more testing on this.

http://mankind.com/angular-isotope/advanced.html

Mark

On Sat, Mar 15, 2014 at 2:30 AM, Nick Lewis notifications@github.comwrote:

Hi Mark

Looks like someone is having a play with the Farnborough site. I'm guessing it's probably you and that's cool!

Otherwise someone else is, hmm...

Regards

Nick On 14 Mar 2014 21:18, "Nick Lewis" nickeblewis@gmail.com wrote:

Hi Mark,

Thanks a lot, and that has helped me a lot.

I have got it working a lot better but there is one minor thing bugging me still.

Go to http://www.farnboroughguide.com

I have got the initial load to work smoothly now, as you will see that it works, which it wasn't previously. I set the iso-use-init-event="true" in my HTML container and then $scope.$emit('iso-init') to apply the isotope from my controller once my Firebase data has loaded into my scope.

If you click on an item's heading and then click on save on the page that appears next, you will notice that the grid is re-ordered and still works fine. (don't panic, none of this is live customer data yet)

Now if you have two windows open with the application running, change one item as in the previous step and then switch to view the other window (or tab). It looks like the updated item has vanished. It has in fact moved behind the first item in the top corner of the grid or so it would seem. Thankfully one of my original problems where a space would be left behind has been fixed.

Is there anything I can or should do to get around this? Something I've missed?

Regards,

Nick Lewis

On Fri, Mar 14, 2014 at 7:32 PM, Nick Lewis nickeblewis@gmail.com wrote:

Hi Mark

That sounds fantastic, just updating my source...

Regards,

Nick

On Fri, Mar 14, 2014 at 5:09 PM, Mark Hall <notifications@github.com wrote:

I'd love to see what you're up to with this.

The code is released. v 0.1.10.

You can take a look at the demo (advanced) in the code to see how it works. The attribute is "iso-use-init-event='true'" and you can emit an "iso-init" event to get things going. Hope this what you needed.

Mark Allen Hall

On Fri, Mar 14, 2014 at 9:09 AM, Nick Lewis <notifications@github.com

wrote:

Hi Mark

Thanks a lot. I may share my project with you, so that you can see it in action. In any case please do let me know when it goes to release..

Thanks

Nick

On Fri, Mar 14, 2014 at 3:49 PM, Mark Hall <notifications@github.com

wrote:

Hi, For your first issue, I looked over the code a found a spot where an 'iso-ignore="true"' attribute/value combo would not initialize Isotope. And I even have a service to store any configuration events from the "opt-kind" directive that may occur before initialization. Unfortunately, I didn't include a mechanism to actually do an initialization later. Doh! But it's a great idea and I've already coded everything up. "iso-ignore=true" will be paired with an event "iso-initialize". I'll let you know when it is released.

As for the second issue, I believe I have fixed it in my last release. Items were being removed from the DOM but not Isotope's internal structure. Now a call to Isotope to 'remove' the object is made.

Mark

I

On Fri, Mar 14, 2014 at 4:57 AM, Nick Lewis < notifications@github.com

wrote:

Question #1 < https://github.com/mankindsoftware/angular-isotope/issues/1

Is there a way of somehow delaying the initialisation of the isotope? The reason being is that I am loading data from Firebase into my $scope, which may take a couple of seconds at the start. The isotope is applied too early. My cards appear overlayed on top

Can I bind it later? If so how? [image: image]<

https://f.cloud.github.com/assets/440732/2420362/9d083bc4-ab6f-11e3-9feb-4f6f3a2cece3.png

Question #2 < https://github.com/mankindsoftware/angular-isotope/issues/2

When my firebase data updates the scope does too. Items that update move across to the top right hand corner of my grid, leaving a gap where they used to be.

[image: image]https://f.cloud.github.com/assets/440732/2420374 /dd2d1fbc-ab6f-11e3-9fd5-fd8e5e8f6238.png

Please advise?

Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9> .

Reply to this email directly or view it on GitHub<

https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37662877

.

---Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

Reply to this email directly or view it on GitHub<

https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37665230

.

Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37671920

.

--- Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

---Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37721502 .

nickeblewis commented 10 years ago

Hi Mark,

Thanks ever so much for your help on this. No websites or data were harmed in this experiment! It was interesting to see someone else using it and the effects that it has.

I shall try your suggestion here and will let you know how that goes.

I'm enjoying exploring this as much as you, as my site is going to develop further and isotope plays a major role in it's success.

I'm also starting a new contract on Monday where I'm going to be specialising in it, so got an exciting time coming up.

Regards

Nick On 15 Mar 2014 22:01, "Mark Hall" notifications@github.com wrote:

Yes, it was me. Hope I didn't overload the system or break anything or cost you many. Your's was the first "in-the-wild" application I could look at, and I wanted to see how I could make the competing DOM-as-view approach of Angular and DOM-as-model approach of Isotope work together in terms of the filters.

One thing I noticed was that the priority item of the first site was put at the end on the second site.

An isotope() command will make your list adjust correctly. I checked in new code to allow you to make use of the method event. On the "isotope" container, add iso-method-subscribe="my-iso-method" as an attribute. Then when you get a new list , do a $timeout(function() { $scope.$emit(my-iso-method, {name:null, params:null})) to refresh. You can experiment with other isotope methods: {name: 'reLayout', params:null} etc. I still have to do more testing on this.

http://mankind.com/angular-isotope/advanced.html

Mark

On Sat, Mar 15, 2014 at 2:30 AM, Nick Lewis <notifications@github.com

wrote:

Hi Mark

Looks like someone is having a play with the Farnborough site. I'm guessing it's probably you and that's cool!

Otherwise someone else is, hmm...

Regards

Nick On 14 Mar 2014 21:18, "Nick Lewis" nickeblewis@gmail.com wrote:

Hi Mark,

Thanks a lot, and that has helped me a lot.

I have got it working a lot better but there is one minor thing bugging me still.

Go to http://www.farnboroughguide.com

I have got the initial load to work smoothly now, as you will see that it works, which it wasn't previously. I set the iso-use-init-event="true" in my HTML container and then $scope.$emit('iso-init') to apply the isotope from my controller once my Firebase data has loaded into my scope.

If you click on an item's heading and then click on save on the page that appears next, you will notice that the grid is re-ordered and still works fine. (don't panic, none of this is live customer data yet)

Now if you have two windows open with the application running, change one item as in the previous step and then switch to view the other window (or tab). It looks like the updated item has vanished. It has in fact moved behind the first item in the top corner of the grid or so it would seem. Thankfully one of my original problems where a space would be left behind has been fixed.

Is there anything I can or should do to get around this? Something I've missed?

Regards,

Nick Lewis

On Fri, Mar 14, 2014 at 7:32 PM, Nick Lewis nickeblewis@gmail.com wrote:

Hi Mark

That sounds fantastic, just updating my source...

Regards,

Nick

On Fri, Mar 14, 2014 at 5:09 PM, Mark Hall <notifications@github.com wrote:

I'd love to see what you're up to with this.

The code is released. v 0.1.10.

You can take a look at the demo (advanced) in the code to see how it works. The attribute is "iso-use-init-event='true'" and you can emit an "iso-init" event to get things going. Hope this what you needed.

Mark Allen Hall

On Fri, Mar 14, 2014 at 9:09 AM, Nick Lewis < notifications@github.com

wrote:

Hi Mark

Thanks a lot. I may share my project with you, so that you can see it in action. In any case please do let me know when it goes to release..

Thanks

Nick

On Fri, Mar 14, 2014 at 3:49 PM, Mark Hall < notifications@github.com

wrote:

Hi, For your first issue, I looked over the code a found a spot where an 'iso-ignore="true"' attribute/value combo would not initialize Isotope. And I even have a service to store any configuration events from the "opt-kind" directive that may occur before initialization. Unfortunately, I didn't include a mechanism to actually do an initialization later. Doh! But it's a great idea and I've already coded everything up. "iso-ignore=true" will be paired with an event "iso-initialize". I'll let you know when it is released.

As for the second issue, I believe I have fixed it in my last release. Items were being removed from the DOM but not Isotope's internal structure. Now a call to Isotope to 'remove' the object is made.

Mark

I

On Fri, Mar 14, 2014 at 4:57 AM, Nick Lewis < notifications@github.com

wrote:

Question #1 < https://github.com/mankindsoftware/angular-isotope/issues/1

Is there a way of somehow delaying the initialisation of the isotope? The reason being is that I am loading data from Firebase into my $scope, which may take a couple of seconds at the start. The isotope is applied too early. My cards appear overlayed on top

Can I bind it later? If so how? [image: image]<

https://f.cloud.github.com/assets/440732/2420362/9d083bc4-ab6f-11e3-9feb-4f6f3a2cece3.png

Question #2 < https://github.com/mankindsoftware/angular-isotope/issues/2

When my firebase data updates the scope does too. Items that update move across to the top right hand corner of my grid, leaving a gap where they used to be.

[image: image]https://f.cloud.github.com/assets/ 440732/2420374 /dd2d1fbc-ab6f-11e3-9fd5-fd8e5e8f6238.png

Please advise?

Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9> .

Reply to this email directly or view it on GitHub<

https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37662877

.

---Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

Reply to this email directly or view it on GitHub<

https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37665230

.

Reply to this email directly or view it on GitHub<

https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37671920

.

--- Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

---Nick Lewis

Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37721502

.

Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37739334 .

nickeblewis commented 10 years ago

I have changed my "isotope-container" div to look like this:

In my code where the database is updated and where it needs to refresh isotope: $timeout(function() { $scope.$emit('my-iso-method', {name:null, params:null}); }); This hasn't worked, so maybe I am missing something or not totally understanding the mechanism here. Going to call it a night, it is 1am almost here :-)
mankindsoftware commented 10 years ago

Hi Nick, I released a clean version of angular-isotope. I found that the orderBy filter needs the refresh, which is working correctly now (there was a bug). But if you use "track by" the refresh is automatic.

  • Documentation and working examples:

    /http://mankind.com/angular-isotope/

    On Sat, Mar 15, 2014 at 5:39 PM, Nick Lewis notifications@github.comwrote:

    I have changed my "isotope-container" div to look like this:

    In my code where the database is updated and where it needs to refresh isotope:

    $timeout(function() { $scope.$emit('my-iso-method', {name:null, params:null}); });

    This hasn't worked, so maybe I am missing something or not totally understanding the mechanism here. Going to call it a night, it is 1am almost here :-)

    Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37744172 .

  • nickeblewis commented 10 years ago

    Hi Mark

    Brilliant I will take a look this evening when I get back. Will be good to have a play with the tracking feature also.

    Thanks

    Nick On 19 Mar 2014 03:03, "Mark Hall" notifications@github.com wrote:

    Hi Nick, I released a clean version of angular-isotope. I found that the orderBy filter needs the refresh, which is working correctly now (there was a bug). But if you use "track by" the refresh is automatic.

    <li ng-repeat="x in xList track by x.number" isotope-item="" class="kindling {{x.class}}" onclick="removeItem(this)">

    Documentation and working examples:

    /http://mankind.com/angular-isotope/

    On Sat, Mar 15, 2014 at 5:39 PM, Nick Lewis <notifications@github.com

    wrote:

    I have changed my "isotope-container" div to look like this:

    In my code where the database is updated and where it needs to refresh isotope:

    $timeout(function() { $scope.$emit('my-iso-method', {name:null, params:null}); });

    This hasn't worked, so maybe I am missing something or not totally understanding the mechanism here. Going to call it a night, it is 1am almost here :-)

    Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37744172

    .

    Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38013399 .

    nickeblewis commented 10 years ago

    I've taken the latest and still having trouble with it. If you like I can point you in the direction of my repo which is http://github.com/nickeblewis/farnboroughjs.git

    Thanks

    On Wed, Mar 19, 2014 at 3:03 AM, Mark Hall notifications@github.com wrote:

    Hi Nick, I released a clean version of angular-isotope. I found that the orderBy filter needs the refresh, which is working correctly now (there was a bug). But if you use "track by" the refresh is automatic.

    <li ng-repeat="x in xList track by x.number" isotope-item="" class="kindling {{x.class}}" onclick="removeItem(this)">

    Documentation and working examples:

    /http://mankind.com/angular-isotope/

    On Sat, Mar 15, 2014 at 5:39 PM, Nick Lewis <notifications@github.com

    wrote:

    I have changed my "isotope-container" div to look like this:

    In my code where the database is updated and where it needs to refresh isotope:

    $timeout(function() { $scope.$emit('my-iso-method', {name:null, params:null}); });

    This hasn't worked, so maybe I am missing something or not totally understanding the mechanism here. Going to call it a night, it is 1am almost here :-)

    Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37744172

    .

    Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38013399 .

    ---Nick Lewis

    Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

    mankindsoftware commented 10 years ago

    taking a look at it now...

    On Wed, Mar 19, 2014 at 12:36 PM, Nick Lewis notifications@github.comwrote:

    I've taken the latest and still having trouble with it. If you like I can point you in the direction of my repo which is http://github.com/nickeblewis/farnboroughjs.git

    Thanks

    On Wed, Mar 19, 2014 at 3:03 AM, Mark Hall notifications@github.com wrote:

    Hi Nick, I released a clean version of angular-isotope. I found that the orderBy filter needs the refresh, which is working correctly now (there was a bug). But if you use "track by" the refresh is automatic.

    <li ng-repeat="x in xList track by x.number" isotope-item="" class="kindling {{x.class}}" onclick="removeItem(this)">

    Documentation and working examples:

    /http://mankind.com/angular-isotope/

    On Sat, Mar 15, 2014 at 5:39 PM, Nick Lewis <notifications@github.com

    wrote:

    I have changed my "isotope-container" div to look like this:

    In my code where the database is updated and where it needs to refresh isotope:

    $timeout(function() { $scope.$emit('my-iso-method', {name:null, params:null}); });

    This hasn't worked, so maybe I am missing something or not totally understanding the mechanism here. Going to call it a night, it is 1am almost here :-)

    Reply to this email directly or view it on GitHub<

    https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37744172

    .

    Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38013399

    .

    ---Nick Lewis

    Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

    Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38096924 .

    nickeblewis commented 10 years ago

    You are welcome to clone it. Do the normal npm install and run node server. Then localhost:3000.

    All if the important stuff is in the www folder. You need not worry about the app folder.

    Thanks

    Nick On 20 Mar 2014 04:41, "Mark Hall" notifications@github.com wrote:

    taking a look at it now...

    On Wed, Mar 19, 2014 at 12:36 PM, Nick Lewis <notifications@github.com

    wrote:

    I've taken the latest and still having trouble with it. If you like I can point you in the direction of my repo which is http://github.com/nickeblewis/farnboroughjs.git

    Thanks

    On Wed, Mar 19, 2014 at 3:03 AM, Mark Hall notifications@github.com wrote:

    Hi Nick, I released a clean version of angular-isotope. I found that the orderBy filter needs the refresh, which is working correctly now (there was a bug). But if you use "track by" the refresh is automatic.

    <li ng-repeat="x in xList track by x.number" isotope-item="" class="kindling {{x.class}}" onclick="removeItem(this)">

    Documentation and working examples:

    /http://mankind.com/angular-isotope/

    On Sat, Mar 15, 2014 at 5:39 PM, Nick Lewis <notifications@github.com

    wrote:

    I have changed my "isotope-container" div to look like this:

    In my code where the database is updated and where it needs to refresh isotope:

    $timeout(function() { $scope.$emit('my-iso-method', {name:null, params:null}); });

    This hasn't worked, so maybe I am missing something or not totally understanding the mechanism here. Going to call it a night, it is 1am almost here :-)

    Reply to this email directly or view it on GitHub<

    https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37744172

    .

    Reply to this email directly or view it on GitHub<

    https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38013399

    .

    ---Nick Lewis

    Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

    Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38096924

    .

    Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38134808 .

    mankindsoftware commented 10 years ago

    Hi,

    I made one change to refresh in the controllers.js file. When ng-repeat | orderBy is used, the isotope() method without parameters should be called to refresh. The angular-isotope message is: $scope.$emit('iso-method', {name:null, params:null})

    I guess the documentation was misleading. The iso-method init below will refresh the list. But it looks like the update to the second list is one behind, so the refresh may need to go somewhere else. I know that AngularJS destroys an element taken off the list. The ng-repeat | orderBy filter creates a new array, so Angular destroys the element and creates a new one. The ng-repeat "track by" tells Angular to reuse the element, and this also does an automatic refresh/sync with Isotope. But "track by" throws errors with your array.

    So you might want to see where best to place the iso refresh emit below.

    Thanks, Mark

    fbEvents.on("child_changed", function(snapshot) {

    var placeName = snapshot.val().name;
    
    $scope.status = placeName + " has been updated";
    
    console.log('FB has updated ');
    
    // if($scope.loaded === 1)
    
    //   $('.isotope').isotope('reloadItems').isotope();
    
    // $scope.$emit('iso-init');
    
    $timeout(function() {
    
      $scope.$emit('iso-method', {name:null, params:null})    });

    });

    On Thu, Mar 20, 2014 at 12:02 AM, Nick Lewis notifications@github.comwrote:

    You are welcome to clone it. Do the normal npm install and run node server. Then localhost:3000.

    All if the important stuff is in the www folder. You need not worry about the app folder.

    Thanks

    Nick On 20 Mar 2014 04:41, "Mark Hall" notifications@github.com wrote:

    taking a look at it now...

    On Wed, Mar 19, 2014 at 12:36 PM, Nick Lewis <notifications@github.com

    wrote:

    I've taken the latest and still having trouble with it. If you like I can point you in the direction of my repo which is http://github.com/nickeblewis/farnboroughjs.git

    Thanks

    On Wed, Mar 19, 2014 at 3:03 AM, Mark Hall notifications@github.com wrote:

    Hi Nick, I released a clean version of angular-isotope. I found that the orderBy filter needs the refresh, which is working correctly now (there was a bug). But if you use "track by" the refresh is automatic.

    <li ng-repeat="x in xList track by x.number" isotope-item="" class="kindling {{x.class}}" onclick="removeItem(this)">

    Documentation and working examples:

    /http://mankind.com/angular-isotope/

    On Sat, Mar 15, 2014 at 5:39 PM, Nick Lewis < notifications@github.com

    wrote:

    I have changed my "isotope-container" div to look like this:

    In my code where the database is updated and where it needs to refresh isotope:

    $timeout(function() { $scope.$emit('my-iso-method', {name:null, params:null}); });

    This hasn't worked, so maybe I am missing something or not totally understanding the mechanism here. Going to call it a night, it is 1am almost here :-)

    Reply to this email directly or view it on GitHub<

    https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37744172

    .

    Reply to this email directly or view it on GitHub<

    https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38013399

    .

    ---Nick Lewis

    Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

    Reply to this email directly or view it on GitHub<

    https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38096924

    .

    Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38134808

    .

    Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38139916 .

    nickeblewis commented 10 years ago

    Ok Thanks

    Will explore this later. On 20 Mar 2014 07:13, "Mark Hall" notifications@github.com wrote:

    Hi,

    I made one change to refresh in the controllers.js file. When ng-repeat | orderBy is used, the isotope() method without parameters should be called to refresh. The angular-isotope message is: $scope.$emit('iso-method', {name:null, params:null})

    I guess the documentation was misleading. The iso-method init below will refresh the list. But it looks like the update to the second list is one behind, so the refresh may need to go somewhere else. I know that AngularJS destroys an element taken off the list. The ng-repeat | orderBy filter creates a new array, so Angular destroys the element and creates a new one. The ng-repeat "track by" tells Angular to reuse the element, and this also does an automatic refresh/sync with Isotope. But "track by" throws errors with your array.

    So you might want to see where best to place the iso refresh emit below.

    Thanks, Mark

    fbEvents.on("child_changed", function(snapshot) {

    var placeName = snapshot.val().name;

    $scope.status = placeName + " has been updated";

    console.log('FB has updated ');

    // if($scope.loaded === 1)

    // $('.isotope').isotope('reloadItems').isotope();

    // $scope.$emit('iso-init');

    $timeout(function() {

    $scope.$emit('iso-method', {name:null, params:null}) });

    });

    On Thu, Mar 20, 2014 at 12:02 AM, Nick Lewis <notifications@github.com

    wrote:

    You are welcome to clone it. Do the normal npm install and run node server. Then localhost:3000.

    All if the important stuff is in the www folder. You need not worry about the app folder.

    Thanks

    Nick On 20 Mar 2014 04:41, "Mark Hall" notifications@github.com wrote:

    taking a look at it now...

    On Wed, Mar 19, 2014 at 12:36 PM, Nick Lewis <notifications@github.com

    wrote:

    I've taken the latest and still having trouble with it. If you like I can point you in the direction of my repo which is http://github.com/nickeblewis/farnboroughjs.git

    Thanks

    On Wed, Mar 19, 2014 at 3:03 AM, Mark Hall <notifications@github.com

    wrote:

    Hi Nick, I released a clean version of angular-isotope. I found that the orderBy filter needs the refresh, which is working correctly now (there was a bug). But if you use "track by" the refresh is automatic.

    <li ng-repeat="x in xList track by x.number" isotope-item="" class="kindling {{x.class}}" onclick="removeItem(this)">

    Documentation and working examples:

    /http://mankind.com/angular-isotope/

    On Sat, Mar 15, 2014 at 5:39 PM, Nick Lewis < notifications@github.com

    wrote:

    I have changed my "isotope-container" div to look like this:

    In my code where the database is updated and where it needs to refresh isotope:

    $timeout(function() { $scope.$emit('my-iso-method', {name:null, params:null}); });

    This hasn't worked, so maybe I am missing something or not totally understanding the mechanism here. Going to call it a night, it is 1am almost here :-)

    Reply to this email directly or view it on GitHub<

    https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-37744172

    .

    Reply to this email directly or view it on GitHub<

    https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38013399

    .

    ---Nick Lewis

    Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

    Reply to this email directly or view it on GitHub<

    https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38096924

    .

    Reply to this email directly or view it on GitHub<

    https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38134808

    .

    Reply to this email directly or view it on GitHub< https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38139916

    .

    Reply to this email directly or view it on GitHubhttps://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-38140394 .

    luki86 commented 10 years ago

    I'm trying to delay angular-isotope init, but without positive results. I've added iso-use-init-event='true' attribute, then I've emitted event $scope.$emit('my-iso-method', {name:null, params:null}). But it still doesn't work.

    I've prepared example: http://plnkr.co/edit/i8u0HyAvOnGoBGkLdxe4?p=preview

    Maybe you know how to fix it?

    nickeblewis commented 10 years ago

    Oooh it's been awhile since I have looked at this and decided to put my project on hold. I'm sure Mark can help? I'd be interested to know, as I will be attempting this again at some point.

    On Tue, Jul 29, 2014 at 2:01 PM, luki86 notifications@github.com wrote:

    I'm trying to delay angular-isotope init, but without positive results. I've added iso-use-init-event='true' attribute, then I've emitted event $scope.$emit('my-iso-method', {name:null, params:null}). But it still doesn't work.

    I've prepared example: http://plnkr.co/edit/i8u0HyAvOnGoBGkLdxe4?p=preview

    Maybe you know how to fix it?

    Reply to this email directly or view it on GitHub https://github.com/mankindsoftware/angular-isotope/issues/9#issuecomment-50472575 .

    ---Nick Lewis

    Visit google.com/+NickLewis http://google.com/+NickLewis for my online profile

    luki86 commented 10 years ago

    I've found the solution. Instead of $scope.$emit I should use $scope.$broadcast, and 'iso-init' instead of 'my-iso-method'. I've update plnkr, and now angular-isotope is starting after 5 seconds.

    http://plnkr.co/edit/i8u0HyAvOnGoBGkLdxe4?p=preview

    ghost commented 9 years ago

    Brilliant, was looking for this! You guys might wanna work on better documentation...