回答編集履歴

2

回答追記

2017/12/11 08:56

投稿

akabee
akabee

スコア1947

test CHANGED
@@ -1,3 +1,57 @@
1
+ すみません、実際に試してはいないのですが以下のようなコードでいかがでしょう?
2
+
3
+ スコープへの反映をループ内で行うのをやめました。
4
+
5
+ ```javascript
6
+
7
+ .then(function (fileArray) {
8
+
9
+ var localItem = [];
10
+
11
+ //ファイル一覧をタイムスタンプ順(昇順)にソート
12
+
13
+ fileArray.sort(function (a, b) {
14
+
15
+ if (a.metadata.modificationTime > b.metadata.modificationTime) return -1;
16
+
17
+ if (a.metadata.modificationTime < b.metadata.modificationTime) return 1;
18
+
19
+ return 0;
20
+
21
+ })
22
+
23
+ .forEach(function (fileObj, index) {
24
+
25
+ const src = fileObj.toURL();
26
+
27
+ localItem .push({
28
+
29
+ src: src.replace('.jpg', '.thm'),
30
+
31
+ orgSrc: src,
32
+
33
+ date: fileObj.metadata.modificationTime,
34
+
35
+ size: fileObj.metadata.size
36
+
37
+ });
38
+
39
+ });
40
+
41
+ $scope.item = localItem ;
42
+
43
+ sharedScope.setScope('gazoCatalogCtrl', $scope.item);
44
+
45
+ })
46
+
47
+ ```
48
+
49
+
50
+
51
+ もしくは、例えば
52
+
53
+
54
+
1
55
  1.コントローラAを生成し、データを取得し格納しておく要素をXで宣言する。
2
56
 
3
57
  2.コントローラBを生成し、データを取得し格納しておく要素をYで宣言する。

1

回答修正

2017/12/11 08:56

投稿

akabee
akabee

スコア1947

test CHANGED
@@ -1,61 +1,3 @@
1
- こんな感じでどうでしょう?
2
-
3
- ループ内ではスコープに対しデータを設定せずに、ループ終了後にスコープにデータを設定しています。
4
-
5
-
6
-
7
- ```javascript
8
-
9
- .then(function (fileArray) {
10
-
11
- var localItem = [];
12
-
13
- //ファイル一覧をタイムスタンプ順(昇順)にソート
14
-
15
- fileArray.sort(function (a, b) {
16
-
17
- if (a.metadata.modificationTime > b.metadata.modificationTime) return -1;
18
-
19
- if (a.metadata.modificationTime < b.metadata.modificationTime) return 1;
20
-
21
- return 0;
22
-
23
- })
24
-
25
- .forEach(function (fileObj, index) {
26
-
27
- const src = fileObj.toURL();
28
-
29
- localItem .push({
30
-
31
- src: src.replace('.jpg', '.thm'),
32
-
33
- orgSrc: src,
34
-
35
- date: fileObj.metadata.modificationTime,
36
-
37
- size: fileObj.metadata.size
38
-
39
- });
40
-
41
- $scope.item = localItem ;
42
-
43
- sharedScope.setScope('gazoCatalogCtrl', $scope.item);
44
-
45
- //この後にgazoCatalogCtrlに表示させたい
46
-
47
- });
48
-
49
- })
50
-
51
- ```
52
-
53
-
54
-
55
- もしくは、
56
-
57
-
58
-
59
1
  1.コントローラAを生成し、データを取得し格納しておく要素をXで宣言する。
60
2
 
61
3
  2.コントローラBを生成し、データを取得し格納しておく要素をYで宣言する。