一般项目的方法
<html>
<head>
<script>
<script src="http://requirejs.org/docs/release/2.1.16/comments/require.js"></script>
</script>
</head>
</html>
<script>
// 配置 Mock 路径
require.config({
paths: {
mock: ‘http://mockjs.com/dist/mock‘
}
})
// 加载 Mock
require([‘mock‘], function(Mock) {
// Mock.mock(rurl, template)
Mock.mock(‘hello.json‘, {
‘list|1-10‘: [{
‘id|+1‘: 1,
‘email‘: ‘@EMAIL‘,
‘regexp3‘: /\d{5,10}/
}]
})
$.ajax({
url: ‘hello.json‘,
dataType: ‘json‘
}).done(function(data, status, jqXHR) {
$(‘<pre>‘).text(JSON.stringify(data, null, 4))
.appendTo(‘body‘)
})
})
</script>
vue-cli项目中
在src同级目录里面创建一个mock/mock.js
相关.vue文件引用 import ‘../../mock/mock.js‘ import axios from ‘axios‘
另main.js引入import axios from ‘axios‘
注意这点,使用 Vue.prototype.$http = axios
mock.js编写示例如下,数据和暴露url
const Mock = require(‘mockjs‘); // 获取 mock.Random 对象 const Random = Mock.Random; // mock一组数据 const produceData = function(opt) { console.log(‘opt‘, opt); let articles = []; for (let i = 0; i < 30; i++) { let newArticleObject = { title: Random.csentence(5, 30), // Random.csentence( min, max ) thumbnail_pic_s: Random.dataImage(‘300x250‘, ‘mock的图片‘), // Random.dataImage( size, text ) 生成一段随机的 Base64 图片编码 author_name: Random.cname(), // Random.cname() 随机生成一个常见的中文姓名 date: Random.date() + ‘ ‘ + Random.time() // Random.date()指示生成的日期字符串的格式,默认为yyyy-MM-dd;Random.time() 返回一个随机的时间字符串 } articles.push(newArticleObject) } return { data: articles } } Mock.mock(‘/news‘, /post|get/i, produceData); export default { produceData };
.vue组件里面请求
mounted() { //alert(1) this.$http.post(‘/news‘) .then(function(response) { console.log(response); }) .catch(function(error) { console.log(error); }); }
原文地址:https://www.cnblogs.com/lwj820876312/p/9085560.html