在使用vue开发的时候,一直疑惑怎么才能 前后端数据分离,这样能增加工作效率,经过查找资料终于自己研究出来,在此做一个小小的总结。
搭建一个vue项目
全局安装 vue-cli
1 | $ npm install vue-cli -g |
- 创建一个基于 webpack 模板的新项目 vue init webpack 文件名
1 | $ vue init webpack webpackName |
- 安装依赖
1 | $ cd webpackName |
正式安装mockjs
1 | npm install mockjs --save-dev |
- 启动项目
1 | npm run dev |
- 在src目录下创建一个mock.js跟main同级
1 | import Vue from 'vue'; |
1 | export default Mock.mock('msg', { |
- 然后再main.js引入
1 | import './mock' |
ajax请求mockjs数据
1 | this.$http.get('msg').then(function(data){ |
- 由于mockjs是拦截ajax请求,所以只要请求名对应就可,无需填写请求地址,例如this.$http.get中的 msg
Response {url: “msg”, ok: true, status: 200, statusText: “OK”, headers: Headers, …}
基于jQuery的使用方法
- 引入script
1
<script src="../plugin/mockjs/dist/mock.js"></script>
- mock数据
1
2
3
4Mock.mock('echart_data', {
'name': 'name',
'age|1-100': 100,
});ajax请求mock数据
1
2
3
4
5
6
7
8
9$.ajax({
type: "post",
url: 'echart_data',
contentType: "application/x-www-form-urlencoded; charset=utf-8",
cache: false,//禁止缓存
success: function (data) {
console.log(data)
}
})