一般项目的方法
<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); ?????}); ?}
mockjs模拟数据请求
原文地址:https://www.cnblogs.com/lwj820876312/p/9085560.html