Advertisement
Guest User

Untitled

a guest
May 25th, 2016
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.23 KB | None | 0 0
  1. zad 3: /test/features/fragments/fragments.js
  2.  
  3. /*global element,by*/
  4. var byString = function (object, fragmentName) {
  5. 'use strict';
  6. if (!fragmentName || !fragmentName.replace) {
  7. return null;
  8. }
  9. fragmentName = fragmentName.replace(/\[(\w+)\]/g, '($1)');
  10. fragmentName = fragmentName.replace(/^\./, '');
  11. var a = fragmentName.split('.');
  12. while (a.length) {
  13. var n = a.shift();
  14. var arrayExpr = n.match(/(\w+)\(([^)]*)\)/);
  15. if (arrayExpr) {
  16. object = object[arrayExpr[1]](arrayExpr[2]);
  17. } else if (n in object) {
  18. object = object[n];
  19. } else {
  20. throw new Error('Undefined fragment "' + n + '" in "' + fragmentName + '"');
  21. }
  22. }
  23. return object;
  24. };
  25.  
  26. var fragments = function (text) {
  27. 'use strict';
  28.  
  29. var mapping = {
  30. helloButton: element.bind(null, by.id('helloBtn')),
  31. niceToMeetYouButton: element.bind(null, by.id('meetBtn')),
  32. someBigText: element.bind(null, by.id('BIG')),
  33. learnMoreHref: element.bind(null, by.id('link'))
  34. };
  35.  
  36. return byString(mapping, text);
  37. };
  38.  
  39. module.exports = fragments;
  40.  
  41.  
  42. -------------------------
  43. app/index.html
  44.  
  45.  
  46.  
  47.  
  48. <!DOCTYPE html>
  49. <html>
  50. <head lang="en">
  51. <title>AngularJS Tutorials</title>
  52. <link rel="stylesheet" href="bower_components/bootstrap/dist/css/bootstrap.min.css">
  53. </head>
  54.  
  55. <body ng-app="fifaApp" ng-controller="FifaCtrl as fifa">
  56. <div class="container">
  57. <div class="page-header">
  58. <h1>Gr 1</h1>
  59. </div>
  60. <div>
  61. <div class="panel-body text-center">
  62. <button id="helloBtn" class="btn btn-danger">Hello!</button>
  63. <button class="btn btn-default" ng-click="fifa.showPolandRank($event)">Where is Poland?</button>
  64. <button id="meetBtn" class="btn btn-info">Nice to meet you!</button>
  65. <code ng-if="fifa.PolandRank">{{fifa.type}}</code>
  66. </div>
  67. </div>
  68. <div class="jumbotron">
  69. <h1 id="BIG">Some big text</h1>
  70. <p>...</p>
  71. <p><a id="link" href="#" role="button">Learn more</a></p>
  72. </div>
  73.  
  74. </div>
  75. <script src="bower_components/angular/angular.js"></script>
  76. <script src="exercise3.js"></script>
  77. </body>
  78. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement