質問編集履歴

2

修正

2017/03/03 05:49

投稿

hiroki0322
hiroki0322

スコア65

test CHANGED
File without changes
test CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
 
12
12
 
13
- 現状のやり方は、親コントローラでOnsenUIのDOMイベントを受け取り、$broadcastで子コントローラに渡しています。
13
+ 現状のやり方は、親コントローラでOnsenUIのDOMイベントを受け取り、$broadcastで子コントローラ(各ページのコントローラ)に渡しています。
14
14
 
15
15
  ```javascript
16
16
 

1

追記

2017/03/03 05:49

投稿

hiroki0322
hiroki0322

スコア65

test CHANGED
File without changes
test CHANGED
@@ -7,3 +7,55 @@
7
7
 
8
8
 
9
9
  initイベントは<onspage ng-init="init()">でいけそうでしたが、他が分からず、、、
10
+
11
+
12
+
13
+ 現状のやり方は、親コントローラでOnsenUIのDOMイベントを受け取り、$broadcastで子コントローラに渡しています。
14
+
15
+ ```javascript
16
+
17
+ app.controller('parentController', function($rootScope, $scope) {
18
+
19
+ // ページ表示完了時
20
+
21
+ document.addEventListener("show", function(e){
22
+
23
+ $rootScope.$broadcast(e.target.id + '-show');
24
+
25
+ });
26
+
27
+ });
28
+
29
+ ```
30
+
31
+
32
+
33
+ ```javascript
34
+
35
+ app.controller('childController', function($rootScope, $scope) {
36
+
37
+ $scope.$on('page-child-show', function(event, options) {
38
+
39
+
40
+
41
+ });
42
+
43
+ });
44
+
45
+ ```
46
+
47
+
48
+
49
+ ```html
50
+
51
+ <ons-page id="page-child" ng-controller="childController">
52
+
53
+ コンテンツ
54
+
55
+ </ons-page>
56
+
57
+ ```
58
+
59
+
60
+
61
+ document.addEventListenerを使わずに、angular1でやる方法はないのかと思った次第です。