使用 Vue.js 开发后台过程中每个模块都需要写大量重复代码,尝试用过 vue-resource
并不是很好用,还有诸多 Bug ,于是自己动手造了一个轮子:
v-model ( https://github.com/laoshu133/v-model)
代码风格趋近于 ng-resource
,易于上手 😄
举例:
const PostModel = Model.extend('/posts/:id', {
publish: { method: 'POST' }
}, {
EDITING: 0,
PUBLISHED: 1
});
const app = new Vue({
el: '#app',
data: {
post: new PostModel({
status: PostModel.EDITING,
content: '',
title: ''
})
},
methods: {
load(id) {
this.post = PostModel.get({
id: id
});
return this.post.$promise;
},
save(data) {
return this.post.$save(data);
}
}
});