angular-translate-once
is an extension of angular-translate
by introducing one-time bindings for static content.
By default, all of your translations beocme part of the digest cycle and bloat your application's $watch
list. You don't really need to observe any changes for things like
- form labels
- input placeholders
- link text/titles
- static copy
These things really only need to bind once. If you're looking to trim any excess watchers from your application, and you use angular-translate
, this directive may help you out.
<label translate-once="EMAIL_ADDRESS"></label>
<input type="email" translate-once-placeholder="SAMPLE_EMAIL_ADDRESS" />
<p translate-once="DYNAMIC_CONTENT" translate-values="{standard: 'object'}"></p>
This should all look very familiar, the only difference is -once
in the directive name, and that the translation will be applied as soon as the directive is linked.