special dependencies, injecting 257
transclusion function, access to 261
transclusion, getting 253
directives
attribute (&), call-back expression
providing 227
attribute (=), data binding to 227
attribute (@), interpolating 226
button directive, writing 220, 221
button, styling 219
compile field 219
controller field 219
defining 218, 219, 321, 322
isolating, from parent
scope 225, 226
link field 219
name field 219
pagination directive definition object 228,
229
pagination directive, tests writing 223
pagination directive, writing 222
priority field 219
priority property, using 255
referencing 109, 110
replace field 219
require field 219
restrict field 219
scope field 219
selectPage call-back, adding 229, 230
skeleton unit test 217
template field 219
templateUrl field 219
terminal field 219
transclude field 219
transclusion functions, accessing 252
transclusion, using 245, 246
unit tests, writing 217, 218
using 279
using, in HTML mark up 215
disableAutoScrolling() method 170
DOM
access in watch-expression,
avoiding 305, 306
synchronizing 292
domain-specific language (DSL) 22, 71
DOM-based templates
about 121
HTML elements, custom 124
multiple DOM elements 122
Repeater DOM elements 122
verbose syntax 121
DOM Event handlers 120, 121
DOM events 310
E
empty options
using, with select directive 148
End to end tests
about 70
daily workflow 71
debugging 73, 74
Karma runner tips and tricks 72
tests subset, executing 73
errorCallBack method 86
Express
URL 47
F
factory method 31
field directive 266
field template
setting up 270
file naming conventions
test folder 57
files
about 58
AngularJS specific files 54, 55
filters
about 125-127
accessing, from JavaScript code 133, 134
and DOM manipulation 135
array-transforming filters 125
built-in filters 125
custom filters 131, 132
data transformations, costly 136
dos and donts 134
filtered results, counting 128, 129
formatting 125
model transformations, handling 124
orderBy filter, sorting with 129-131
unstable 136, 137
first-class JavaScript objects 87
flush() method 107