目的
最近一直在準備只剩半個月就要到的考試,實在是因為電子檔的題目和答案是放在一起所以很難知道有沒有記熟,加上題目太多要印成紙本大約會有快百頁的量,所以就想到用 json-server 來製作簡易的答題網頁。
建立
需要先準備
- Json 資料庫:有考題、選項、答案
- HTML 頁面
Json 資料庫
套件安裝可參考 Json-server 套件
1 | npm install -g json-server |
頁面
在 HTML 要準備 2 個部分,一個要放題目的,另一個是點擊答案後提示答對或答錯
1 | <div id="text"></div> |
AJAX
發出 request 取得 json-server 的資料
1 | var xhr = new XMLHttpRequest(); |
接收回傳
1 | let callback = JSON.parse(xhr.responseText); |
到這裡就可以用 console.log(callback)
看是不是有資料,若是沒有就可能是資料太多,要確保等待資料在回傳前不執行之後的網頁渲染,可以使用
1 | xhr.onload = function() { |
這作用是在當資料還在回傳的路上時,會先等待資料取得後才開始執行之後的部分
在 Json 我是使用陣列把選項放在一起,所以看起來會是這樣
1 | { |
完成 !
1 | let xhr = new XMLHttpRequest(), |
大約是這樣,之後如果還有想到什麼功能再補上。