diff options
| author | Misko Hevery | 2011-04-29 15:18:27 -0700 |
|---|---|---|
| committer | Igor Minar | 2011-06-06 22:28:38 -0700 |
| commit | 11e9572b952e49b01035e956c412d6095533031a (patch) | |
| tree | 04dbf96802f552693d44c541c0d825a2769e3d57 /docs/tutorial.step_10.ngdoc | |
| parent | b6bc6c2ddf1ae1523ec7e4cb92db209cd6501181 (diff) | |
| download | angular.js-11e9572b952e49b01035e956c412d6095533031a.tar.bz2 | |
Move documentation under individual headings
Diffstat (limited to 'docs/tutorial.step_10.ngdoc')
| -rw-r--r-- | docs/tutorial.step_10.ngdoc | 110 |
1 files changed, 0 insertions, 110 deletions
diff --git a/docs/tutorial.step_10.ngdoc b/docs/tutorial.step_10.ngdoc deleted file mode 100644 index 130b4023..00000000 --- a/docs/tutorial.step_10.ngdoc +++ /dev/null @@ -1,110 +0,0 @@ -@workInProgress -@ngdoc overview -@name Tutorial: Step 10 -@description -<table id="tutorial_nav"> -<tr> -<td id="previous_step">{@link tutorial.step_09 Previous}</td> -<td id="step_result">{@link http://angular.github.com/angular-phonecat/step-10/app Live Demo -}</td> -<td id="tut_home">{@link tutorial Tutorial Home}</td> -<td id="code_diff">{@link https://github.com/angular/angular-phonecat/compare/step-9...step-10 -Code Diff}</td> -<td id="next_step">{@link tutorial.step_11 Next}</td> -</tr> -</table> - -The phone details view displays one large image of the current phone and several smaller thumbnail -images. It would be great if we could replace the large image with any of the thumbnails just by -clicking on the desired thumbnail image. Let's have a look how we can do this with angular. - -__`app/partials/phone-detail.html`:__ -<pre> -<img ng:src="{{mainImageUrl}}" class="phone"/> - -<h1>{{phone.name}}</h1> - -<p>{{phone.description}}</p> - -<ul class="phone-thumbs"> - <li ng:repeat="img in phone.images"> - <img ng:src="{{img}}" ng:click="setImage(img)"> - </li> -</ul> -... -</pre> - -__`app/js/controllers.js`:__ -<pre> -... -function PhoneDetailCtrl($xhr) { - var self = this; - - $xhr('GET', 'phones/' + self.params.phoneId + '.json', function(code, response) { - self.phone = response; - self.mainImageUrl = response.images[0]; - }); - - self.setImage = function(imageUrl) { - self.mainImageUrl = imageUrl; - } -} - -//PhoneDetailCtrl.$inject = ['$xhr']; -</pre> - -__`test/e2e/scenarios.js`:__ -<pre> -/* jasmine-like end2end tests go here */ -... - describe('Phone detail view', function() { - - beforeEach(function() { - browser().navigateTo('../../app/index.html#/phones/nexus-s'); - }); - - - it('should display nexus-s page', function() { - expect(binding('phone.name')).toBe('Nexus S'); - }); - - it('should display the first phone image as the main phone image', function() { - expect(element('img.phone').attr('src')).toBe('img/phones/nexus-s.0.jpg'); - }); - - - it('should swap main image if a thumbnail image is clicked on', function() { - element('.phone-thumbs li:nth-child(3) img').click(); - expect(element('img.phone').attr('src')).toBe('img/phones/nexus-s.2.jpg'); - - element('.phone-thumbs li:nth-child(1) img').click(); - expect(element('img.phone').attr('src')).toBe('img/phones/nexus-s.0.jpg'); - }); - }); -}); -</pre> - -## Discussion: - -Adding the phone image swapping feature is fairly straightforward: - -* We defined the `mainImageUrl` model property in the details controller (`PhoneDetailCtrl`) and -set the default value of `mainImageUrl` to the first image in the array of images. -* We created a `setImage` controller method to change `mainImageUrl` to the image clicked on by -the user. -* We registered an `{@link angular.directive.ng:click ng:click}` handler for thumb images to use -the `setImage` controller method. -* We expanded the end-to-end test to verify that our new feature is swapping images correctly. - - -<table id="tutorial_nav"> -<tr> -<td id="previous_step">{@link tutorial.step_09 Previous}</td> -<td id="step_result">{@link http://angular.github.com/angular-phonecat/step-10/app Live Demo -}</td> -<td id="tut_home">{@link tutorial Tutorial Home}</td> -<td id="code_diff">{@link https://github.com/angular/angular-phonecat/compare/step-9...step-10 -Code Diff}</td> -<td id="next_step">{@link tutorial.step_11 Next}</td> -</tr> -</table> |
