前提・実現したいこと
HTMLとJavaScriptを使って、アプリ開発をしております。
他のJSファイルから、letで指定した変数を呼び出す方法を教えてください。
※file2.jsでDialogflow応答結果を呼び出そうとしております。
試したこと
HTML
1<script src="file1.js"></script> 2<script src="file2.js"></script>
・file1.js
JavaScript
1let Dialogflow // Dialogflowからの応答文言 2:(省略) 3 // Dialogflow応答 4 xhr = new XMLHttpRequest(); 5 xhr.open('GET', dialogflowURL, true); 6 7 // サーバからのデータ受信を行った際の動作 8 xhr.onload = function (e) { 9 if (xhr.readyState === 4) { 10 if (xhr.status === 200) { 11 :(省略) 12 Dialogflow = anstext; 13 answer.innerHTML = "<p>" + anstext + "</p>"; // anstextに入っている返答部分を表示させています 14 }else if (IntentName.substr(6,2) == "AI") 15 { 16 :(省略) 17 }else 18 { 19 } 20 } 21 }
・file2.js
JavaScript
1async function savetest() { 2 3 var diaryData = []; 4 diaryData = JSON.parse(localStorage.getItem('diaryData' + year + mon)); 5 var id = 0; 6 if (diaryData == null) { // まだデータがない場合 7 8 var diary = { 9 "id": 0, 10 "date": now, 11 "text": $('textarea[name="text"]').val(), 12 "bbb": await Dialogflow 13 } 14 localStorage.setItem('diaryData' + year + mon, JSON.stringify(diary)); 15 id = 0; 16 } else if (!(Array.isArray(diaryData))) { // データ一件の時(配列じゃないとき) 17 var diary = { 18 "id": 1, 19 "date": now, 20 "text": $('textarea[name="text"]').val(), 21 "bbb": await Dialogflow 22 } 23 var Data = []; 24 Data[0] = diaryData; 25 // 配列に入れる 26 Data.push(diary); 27 id = 1; 28 // 配列をlocalStorageに保存 29 localStorage.setItem('diaryData' + year + mon, JSON.stringify(Data)) 30 } else { //配列でデータが入っている場合(複数データがあるとき) 31 var diary = { 32 "id": diaryData.length, 33 "date": now, 34 "text": $('textarea[name="text"]').val(), 35 "bbb": await Dialogflow 36 } 37 // 配列の最後尾に投稿するデータを追加 38 diaryData.push(diary); 39 // 配列をlocalStorageに保存 40 localStorage.setItem('diaryData' + year + mon, JSON.stringify(diaryData)); 41 id = diaryData.length - 1; 42 } 43}
以上、よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー