title: Angularjs directive 2 way binding not working + delay issue
body: <p>I'm having the following problem. I have a <code>search.js</code> controller which uses a template <code>results.html</code>. That template uses a <strong>category directive</strong> to show all categories that any of the company products might have (as a sidebar). It also uses multiple <strong>product carousel</strong> directives to show the products of each matching company.</p>
  
  <p>In my <code>search.js</code> controller I define a scope variable named <code>filterCategoryId</code> which starts at null. This variable is bound to the categories directive as well as all product carousel directives. Which makes me expect that a change to this variable in either any of the directives as well as in the <code>search.js</code> controller would propagate to all others using this variable. The variable is used to limit the display of products to only those of that category.</p>
  
  <p>But on my product carousel directive, I have defined a scope method <code>removeFilterCategory()</code> which sets <code>filterCategoryId</code> back to null. It works within its own scope. I can see the effects. But it does not effect the <code>filterCategoryId</code> on the categories directive. I can tell because I use ng-class to set an <code>active</code> class to the list item mentioning the category id to which the products are filtered. But changing <code>filterCategoryId</code> on the categories directive <strong>does</strong> propagate to the product carousel directives. <em>There is an ng-repeat before the product carousel directives...</em></p>
  
  <p>In essence. The variable was first defined on the scope of my controller. If I change it on the categories directive, the change gets propagated (after a noticeable while) to the product carousel directives. But if I change it from any of the product carousel items, the categories directive does not reflect the changes. And I don't see why. <em>The product carousel uses a $watch to check <code>filterCategoryId</code> and recalculate its rows..</em></p>
  
  <p>All directives use an isolated scope with the same variable <code>filterCategoryId</code> and use <code>'='</code> as scope value.</p>
  
  <p>What could be the issue?</p>
  
  <p>And secondary even if I change <code>filterCategoryId</code> on the categories directive, it takes 5-6sec to reflect changes on the product carousel directives.</p>
  
  <p>I'm feeling I'm missing something here. Either I have an obvious code error I seem to overlook or I'm missing some angular understanding :). Any help in the right direction would be greatly appreciated.</p>