mockjs模拟数据

<!DOCTYPE html>
<html lang="zh">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
	<div id="app">
	  <p>{{ foo }}</p>
	  <button @click ="getFun">getFun</button>
	  <button @click ="postFun">postFun</button>

	  {{user.name}}
	  {{user.id}}
	 
	  <div v-for="item in fakeData">
		  {{item.id}}
		  <img :src="item.img" alt="">
	  </div>
	</div>
	<script src="./js/mock.js"></script>
	<script src="./js/vue.js"></script>
	<script src="./js/axios.js"></script>
	<script>
		Mock.mock('/get', function(options) {
			console.log("-----------------------");
			return Mock.mock({
				"user": {
					'name': '@cname',
					'id|+1': 88
				}
			});
		})
		Mock.mock('/post', function(options) {
			console.log("-----------------------");
			console.log(JSON.parse(options.body).firstName);
			return Mock.mock({
				"user": {
					'name': '@cname',
					'id|+1': 88
				}
			});
		})
		
		// Mock.setup({ timeout: 1000 });

		new Vue({
			el: '#app',
			data: {
				foo: "ddd",
				fakeData: '',
				user: ''
			},
			created: function (){
				this.getFake()
			},
			methods: {
		        getFake: function(){
					this.fakeData = Mock.mock({
			    		// 属性 list 的值是一个数组,其中含有 1 到 10 个元素
					    'list|1-10': [{
					        // 属性 id 是一个自增数,起始值为 1,每次增 1
					        'id|+1': 1,
					        'guid': '@guid',
					        'foo': 'Hello',
					        // 属性 name 产生数量在最小最大之间min-max
					        'age|1-5': '*',
					        'email': '@email',
					        'cname': '@cname',
					        //整数1-10之间,小数1-10位
					        "number|1-10.1-10": 1,
					        "boolean|1-2": true,
					        "obj|2-3": {
							    "310000": "上海市",
							    "320000": "江苏省",
							    "330000": "浙江省",
							    "340000": "安徽省"
							},
							"array|1-10": [
							    "AMD",
							    "CMD",
							    "UMD"
							],
							'fun': function() {
							    return this.name
							},
							'regexp': /\d{5,10}/,
							//Absolute Path 
							"absolutePath": "@foo /@foo",
							'date': '@date("yyyy-MM-dd")',
							'datetime': '@datetime("y-MM-dd HH:mm:ss")',
							//image( size, background, foreground, format, text )
							'img': "@dataImage('200x100', 'Hello Mock.js!')",
							'color': '@color',
							'rgba': '@rgba()',
							'text': '@paragraph(1, 3)',
							'sentence': '@sentence(3, 5)',
							'cparagraph': '@cparagraph(1, 3)'
					    }]
					}).list
				},
				getFun: function(){
					axios.get('/get')
					.then( (response)=>{
						console.log(response.data);
						this.user = response.data.user
					})
					.catch( (error) => {
						console.log(error);
					});
				},
				postFun: function(){
					axios.post('/post',{
						firstName: 'Fred',
    					lastName: 'Flintstone'
					})
					.then( (response)=>{
						console.log(response.data);
					})
					.catch( (error) => {
						console.log(error);
					});
				}
		    }
		})
	</script>
</body>
</html>