knowhow-server
Version:
A personal workflow engine that can manage and use any network connected host
32 lines (30 loc) • 1.94 kB
HTML
<a href="http://github.com/angular/angular.js/edit/master/docs/content/error/compile/nonassign.ngdoc" class="improve-docs btn btn-primary"><i class="icon-edit"> </i> Improve this doc</a><h1><code ng:non-bindable="">Non-Assignable Expression</code>
<div><span class="hint">error in component <code ng:non-bindable="">$compile</code>
</span>
</div>
</h1>
<div><pre class="minerr-errmsg" error-display="Expression '{0}' used with directive '{1}' is non-assignable!">Expression '{0}' used with directive '{1}' is non-assignable!</pre>
<h2 id="description">Description</h2>
<div class="description"><div class="-compile-page -compile-nonassign-page"><p>This error occurs when a directive defines an isolate scope property
(using the <code>=</code> mode in the <a href="api/ng.$compile#description_comprehensive-directive-api_directive-definition-object"><code><code>scope</code> option</code></a> of a directive definition) but the directive is used with an expression that is not-assignable.</p>
<p>In order for the two-way data-binding to work, it must be possible to write new values back into the path defined with the expression.</p>
<p>For example, given a directive:</p>
<pre><code>myModule.directive('myDirective', function factory() {
return {
...
scope: {
'bind': '=localValue'
}
...
}
});</code></pre>
<p>Following are invalid uses of this directive:</p>
<pre><code><!-- ERROR because `1+2=localValue` is an invalid statement -->
<my-directive bind="1+2">
<!-- ERROR because `myFn()=localValue` is an invalid statement -->
<my-directive bind="myFn()"></code></pre>
<p>To resolve this error, always use path expressions with scope properties that are two-way data-bound:</p>
<pre><code><my-directive bind="some.property">
<my-directive bind="some[3]['property']"></code></pre>
</div></div>
</div>