Guest User

Untitled

a guest
Dec 10th, 2016
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.06 KB | None | 0 0
  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
  6. <meta http-equiv="Content-Security-Policy" content="default-src *; style-src * 'unsafe-inline'; script-src * 'unsafe-inline' 'unsafe-eval'">
  7. <script src="components/loader.js"></script>
  8. <script src="components/script.js"></script>
  9. <link rel="stylesheet" href="components/loader.css">
  10. <link rel="stylesheet" href="css/style.css">
  11. <script>
  12. var app = ons.bootstrap();
  13.  
  14. app.factory("SharedStateService", function () {
  15. return {
  16. text: 'SharedStateService'
  17. };
  18. });
  19.  
  20. app.controller("ShareControllerA", function ($scope, SharedStateService) {
  21. $scope.data = SharedStateService;
  22.  
  23. });
  24.  
  25. app.controller("ShareControllerB", function ($scope, SharedStateService) {
  26. $scope.data = SharedStateService;
  27. });
  28.  
  29. app.controller("ShareControllerC", function ($scope, SharedStateService) {
  30. $scope.data = SharedStateService;
  31. });
  32. </script>
  33. </head>
  34. <body>
  35. <ons-navigator var="myNavigator" page="page1.html">
  36. </ons-navigator>
  37.  
  38. <ons-tabbar var="tabbar">
  39. <ons-tabbar-item
  40. icon="home"
  41. label="Home"
  42. page="page1.html"
  43. active="true"></ons-tabbar-item>
  44. <ons-tabbar-item
  45. icon="comment"
  46. label="Comments"
  47. page="page2.html"></ons-tabbar-item>
  48. <ons-tabbar-item
  49. icon="gear"
  50. label="Settings"
  51. page="page3.html"></ons-tabbar-item>
  52. </ons-tabbar>
  53.  
  54. </body>
  55. </html>
  56.  
  57. <ons-page>
  58. <ons-toolbar>
  59. <div class="center">Navigator</div>
  60. </ons-toolbar>
  61.  
  62. <h4>Shared State Service</h4>
  63. <div ng-controller="ShareControllerA">
  64. <ons-list-header>This is ShareControllerA</ons-list-header>
  65. <ons-list-item><input type="text" class="text-input" ng-model="data.text" style="80%"></ons-list-item>
  66.  
  67. </div>
  68.  
  69.  
  70. <div style="text-align: center">
  71. <br>
  72. <ons-button ng-click="myNavigator.pushPage('page2.html')">
  73. Add List
  74. </ons-button>
  75. </div>
  76. </ons-page>
  77.  
  78. <ons-page>
  79. <ons-toolbar>
  80. <div class="left"><ons-back-button>Back</ons-back-button></div>
  81. <div class="center">Page 2</div>
  82. </ons-toolbar>
  83.  
  84. <div ng-controller="ShareControllerC">
  85. <h5>This is ShareControllerC</h5>
  86. <ul class="list">
  87. <li class="list__item list__item--tappable">
  88. <label class="radio-button">
  89. <input type="radio" name="r" checked="checked">
  90. <div class="radio-button__checkmark"></div>
  91. {{data.text}}
  92. </label><br>
  93. </li>
  94. </ul>
  95.  
  96. </div>
  97. </ons-page>
  98.  
  99. <!DOCTYPE HTML>
  100. <html>
  101. <head>
  102. <meta charset="utf-8">
  103. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
  104. <meta http-equiv="Content-Security-Policy" content="default-src *; style-src * 'unsafe-inline'; script-src * 'unsafe-inline' 'unsafe-eval'">
  105. <script src="components/loader.js"></script>
  106. <script src="components/script.js"></script>
  107. <link rel="stylesheet" href="components/loader.css">
  108. <link rel="stylesheet" href="css/style.css">
  109. <script>
  110. var app = ons.bootstrap();
  111.  
  112. app.factory("SharedStateService", function () {
  113. var array = [];
  114. return {
  115. items: array,
  116. append: function(s){
  117. array.push(s);
  118. }
  119. }
  120. });
  121.  
  122. app.controller("ShareControllerA", function ($scope, SharedStateService) {
  123. $scope.add = function(){
  124. SharedStateService.append($scope.data.text);
  125. tabbar.setActiveTab(1);
  126. }
  127. });
  128.  
  129. app.controller("ShareControllerC", function ($scope, SharedStateService) {
  130. // ons-lazy-repeatのためのデリゲート
  131. // http://ja.onsen.io/guide/overview.html#UsingLazyRepeat
  132. $scope.MyDelegate = {
  133. countItems: function() {
  134. // Return number of items.
  135. return SharedStateService.items.length;
  136. },
  137.  
  138. calculateItemHeight: function(index) {
  139. // Return the height of an item in pixels.
  140. return 45;
  141. },
  142.  
  143. configureItemScope: function(index, itemScope) {
  144. // Initialize scope
  145. itemScope.item = SharedStateService.items[index];
  146. },
  147.  
  148. destroyItemScope: function(index, itemScope) {
  149. // Optional method that is called when an item is unloaded.
  150. console.log('Destroyed item with index: ' + index);
  151. }
  152. };
  153. });
  154. </script>
  155. </head>
  156. <body>
  157. <ons-tabbar var="tabbar">
  158. <ons-tabbar-item
  159. icon="home"
  160. label="Home"
  161. page="page1.html"
  162. active="true"></ons-tabbar-item>
  163. <ons-tabbar-item
  164. icon="comment"
  165. label="Comments"
  166. page="page2.html"></ons-tabbar-item>
  167. <ons-tabbar-item
  168. icon="gear"
  169. label="Settings"
  170. page="page3.html"></ons-tabbar-item>
  171. </ons-tabbar>
  172.  
  173. </body>
  174. </html>
  175.  
  176. <ons-page>
  177. <ons-toolbar>
  178. <div class="center">Navigator</div>
  179. </ons-toolbar>
  180.  
  181. <h4>Shared State Service</h4>
  182. <div ng-controller="ShareControllerA">
  183. <ons-list-header>This is ShareControllerA</ons-list-header>
  184. <ons-list-item><input type="text" class="text-input" ng-model="data.text" style="80%"></ons-list-item>
  185.  
  186. <div style="text-align: center">
  187. <br>
  188. <ons-button ng-click="add()">
  189. Add List
  190. </ons-button>
  191. </div>
  192. </div>
  193. </ons-page>
  194.  
  195. <ons-page>
  196. <ons-toolbar>
  197. <div class="left"><ons-back-button>Back</ons-back-button></div>
  198. <div class="center">Page 2</div>
  199. </ons-toolbar>
  200.  
  201. <div ng-controller="ShareControllerC">
  202. <h5>This is ShareControllerC</h5>
  203. <ul class="list" ons-lazy-repeat="MyDelegate">
  204. <li class="list__item list__item--tappable">
  205. <label class="radio-button">
  206. <input type="radio" name="r" checked="checked">
  207. <div class="radio-button__checkmark"></div>
  208. {{item}}
  209. </label><br>
  210. </li>
  211. </ul>
  212.  
  213. </div>
  214. </ons-page>
Add Comment
Please, Sign In to add comment