質問するログイン新規登録

質問編集履歴

5

・file2.jsのコード追加修正

2021/03/19 00:49

投稿

proday
proday

スコア4

title CHANGED
File without changes
body CHANGED
@@ -36,13 +36,49 @@
36
36
  ```
37
37
  ・file2.js
38
38
  ```JavaScript
39
+ async function savetest() {
40
+
41
+ var diaryData = [];
42
+ diaryData = JSON.parse(localStorage.getItem('diaryData' + year + mon));
43
+ var id = 0;
44
+ if (diaryData == null) { // まだデータがない場合
45
+
39
- var diary = {
46
+ var diary = {
40
- "id": diaryData.length,
47
+ "id": 0,
41
- "aaa": $('input[name="aaa"]:checked').val(),
42
- "date": now,
48
+ "date": now,
43
- "text": $('textarea[name="text"]').val(),
49
+ "text": $('textarea[name="text"]').val(),
44
- "bbb": Dialogflow
50
+ "bbb": await Dialogflow
45
51
  }
52
+ localStorage.setItem('diaryData' + year + mon, JSON.stringify(diary));
53
+ id = 0;
54
+ } else if (!(Array.isArray(diaryData))) { // データ一件の時(配列じゃないとき)
55
+ var diary = {
56
+ "id": 1,
57
+ "date": now,
58
+ "text": $('textarea[name="text"]').val(),
59
+ "bbb": await Dialogflow
60
+ }
61
+ var Data = [];
62
+ Data[0] = diaryData;
63
+ // 配列に入れる
64
+ Data.push(diary);
65
+ id = 1;
66
+ // 配列をlocalStorageに保存
67
+ localStorage.setItem('diaryData' + year + mon, JSON.stringify(Data))
68
+ } else { //配列でデータが入っている場合(複数データがあるとき)
69
+ var diary = {
70
+ "id": diaryData.length,
71
+ "date": now,
72
+ "text": $('textarea[name="text"]').val(),
73
+ "bbb": await Dialogflow
74
+ }
75
+ // 配列の最後尾に投稿するデータを追加
76
+ diaryData.push(diary);
77
+ // 配列をlocalStorageに保存
78
+ localStorage.setItem('diaryData' + year + mon, JSON.stringify(diaryData));
79
+ id = diaryData.length - 1;
80
+ }
81
+ }
46
82
  ```
47
83
 
48
84
  以上、よろしくお願い致します。

4

・目的追記

2021/03/19 00:49

投稿

proday
proday

スコア4

title CHANGED
File without changes
body CHANGED
@@ -2,6 +2,7 @@
2
2
 
3
3
  HTMLとJavaScriptを使って、アプリ開発をしております。
4
4
  他のJSファイルから、letで指定した変数を呼び出す方法を教えてください。
5
+ ※file2.jsでDialogflow応答結果を呼び出そうとしております。
5
6
 
6
7
  ### 試したこと
7
8
 

3

コードを追加

2021/03/18 08:19

投稿

proday
proday

スコア4

title CHANGED
File without changes
body CHANGED
@@ -13,6 +13,10 @@
13
13
  ```JavaScript
14
14
  let Dialogflow // Dialogflowからの応答文言
15
15
  :(省略)
16
+ // Dialogflow応答
17
+ xhr = new XMLHttpRequest();
18
+ xhr.open('GET', dialogflowURL, true);
19
+
16
20
  // サーバからのデータ受信を行った際の動作
17
21
  xhr.onload = function (e) {
18
22
  if (xhr.readyState === 4) {

2

誤字修正

2021/03/18 08:17

投稿

proday
proday

スコア4

title CHANGED
File without changes
body CHANGED
@@ -6,8 +6,8 @@
6
6
  ### 試したこと
7
7
 
8
8
  ```HTML
9
- <script src="file1.js"><script>
9
+ <script src="file1.js"></script>
10
- <script src="file2.js"><script>
10
+ <script src="file2.js"></script>
11
11
  ```
12
12
  ・file1.js
13
13
  ```JavaScript

1

・コードの追加

2021/03/18 08:03

投稿

proday
proday

スコア4

title CHANGED
File without changes
body CHANGED
@@ -12,6 +12,22 @@
12
12
  ・file1.js
13
13
  ```JavaScript
14
14
  let Dialogflow // Dialogflowからの応答文言
15
+ :(省略)
16
+ // サーバからのデータ受信を行った際の動作
17
+ xhr.onload = function (e) {
18
+ if (xhr.readyState === 4) {
19
+ if (xhr.status === 200) {
20
+     :(省略)
21
+ Dialogflow = anstext;
22
+ answer.innerHTML = "<p>" + anstext + "</p>"; // anstextに入っている返答部分を表示させています
23
+ }else if (IntentName.substr(6,2) == "AI")
24
+ {
25
+       :(省略)
26
+ }else
27
+ {
28
+ }
29
+ }
30
+ }
15
31
  ```
16
32
  ・file2.js
17
33
  ```JavaScript