0. ติดตั้งและใช้จำลองในสภาพแวดล้อมโหนด
# ติดตั้ง npm ติดตั้ง mockjs
// ใช้ mockvar mock = ต้องการ ('mockjs') var data = mock.mock ({// ค่าของรายการแอตทริบิวต์คืออาร์เรย์ที่มี 1 ถึง 10 รายการ 'รายการ | 1-10': [{// id แอตทริบิวต์เป็นหมายเลข autoincrement, ค่าเริ่มต้นคือ 1 console.log (json.stringify (data, null, 4))1. สกัดกั้นการร้องขอ AJAX
วิธีนี้มีดังนี้
mock.mock (rurl?, rtype?, แม่แบบ | ฟังก์ชั่น (ตัวเลือก))
คำอธิบายวิธี:
(1) RURL: พารามิเตอร์เสริม
ระบุ URL ที่จะสกัดกั้นซึ่งสามารถเป็นสตริง URL หรือ URL ปกติ ตัวอย่างเช่น ///domain//list/.json/, '/domian/list.json'
(2) RTYPE: พารามิเตอร์เสริม
ระบุประเภทของคำขอ AJAX ที่จะสกัดกั้น ตัวอย่างเช่นรับโพสต์ใส่ลบ ฯลฯ
(3) เทมเพลต | ฟังก์ชั่น: พารามิเตอร์ที่ต้องการมีเพียงหนึ่งในนั้นเท่านั้น
(4) เทมเพลตแสดงถึงเทมเพลตข้อมูลซึ่งสามารถเป็นวัตถุหรือสตริง ตัวอย่างเช่น {'data | 1-10': [{}]}, '@email'
(5) ฟังก์ชั่นชี้ไปที่ตัวเลือก AJAX ที่ตั้งค่าไว้สำหรับคำขอนี้ซึ่งมีสามแอตทริบิวต์: URL, ประเภทและร่างกาย ดูข้อมูลจำเพาะ XMLHTTPREQUEST
คำใบ้
เริ่มต้นใน 1.0, mock.js สกัดกั้นการร้องขอ AJAX โดยการเขียนทับและเยาะเย้ย XMLHTTPREQUESTS ดั้งเดิมและไม่ต้องอาศัยไลบรารีเครื่องมือ AJAX ของบุคคลที่สามอีกต่อไป (เช่น JQuery, Zepto ฯลฯ )
2. การหมดเวลาขอหมดเวลาการร้องขอ AJAX
กำหนดค่าพฤติกรรมเมื่อสกัดกั้นการร้องขอ AJAX รายการการกำหนดค่าที่รองรับคือ: หมดเวลา
(1) Mock.setup (การตั้งค่า)
(2) การตั้งค่า
ที่จำเป็น.
ชุดของรายการการกำหนดค่า
(3) หมดเวลา
ไม่จำเป็น.
ระบุเวลาตอบสนองของคำขอ AJAX ที่สกัดกั้นเป็นมิลลิวินาที ค่าสามารถเป็นจำนวนเต็มบวกเช่น 400 ซึ่งหมายความว่าเนื้อหาการตอบกลับจะไม่ถูกส่งคืนหลังจาก 400 มิลลิวินาที; หรือสตริงในบาร์ '-' สไตล์เช่น '200-600' ซึ่งหมายความว่าเวลาตอบสนองอยู่ระหว่าง 200 ถึง 600 มิลลิวินาที ค่าเริ่มต้นคือ '10 -100 '
3. การสกัดกั้นฉันเข้าใจ
ใช้ชื่อวิธีการเดียวกันและไปที่คอลัมน์เพื่อระบุวิธีการ แก้ไขตัวชี้นี้ผ่านการโทรเพื่อไปถึงการสกัดกั้น
// หลักการการนำไปใช้ // กำหนดคลาสพาเรนต์ var mock_ajax = function (str) {this.showname = function () {console.log (str); } return this;}; // กำหนด subclass var jQuery_ajax = function (str) {this.showname = function () {console.log ('ajax'); } ส่งคืนสิ่งนี้;}; jQuery_ajax (''). sholdame (); // -> ajax // เปลี่ยนสิ่งนี้เป็นชี้ไปที่ mock_ajax.call (jQuery_ajax, '111'); // โทรหา jQuery_ajax.showname ();