Move everything to models and services #17

Merged
konrad merged 82 commits from refactor/models into master 2019-03-02 10:25:10 +00:00
4 changed files with 25 additions and 45 deletions
Showing only changes of commit a142326a44 - Show all commits

View File

@ -9,6 +9,7 @@
},
"dependencies": {
"bulma": "^0.7.1",
"lodash": "^4.17.11",
"v-tooltip": "^2.0.0-rc.33",
"vue": "^2.5.17",
"vue-mc": "^0.5.0"

View File

@ -257,9 +257,13 @@
let listService = new ListService()
let list = listService.get({id: this.listID}, {})
let list = listService.get({id: this.listID}, {}).then(r => {
this.$set(this, 'list', r)
})
// eslint-disable-next-line
console.log(list)
// eslint-disable-next-line
console.log(list.getTitle())
/*this.list = new List({id: this.listID})
this.list.fetch()*/

View File

@ -0,0 +1,14 @@
import {defaults} from "lodash";
export default class AbstractModel {
constructor(data) {
// Put all data in our model
defaults(this, data, this.defaults())
}
// Default attributes that define the "empty" state.
defaults() {
return {}
}
}

View File

@ -1,12 +1,6 @@
export default class ListModel {
constructor(data) {
// eslint-disable-next-line
console.log('ListModel Constructor', data)
// How to put that data in the model?
}
import abstractModel from "./abstractModel";
export default class ListModel extends abstractModel {
// Default attributes that define the "empty" state.
defaults() {
return {
@ -21,41 +15,8 @@ export default class ListModel {
updated: 0,
}
}
/*
// Custom options
options() {
return {
methods: {
update: 'POST',
create: 'PUT',
},
// How to add headers to requests?
headers: {
'Authorization': 'Bearer ' + localStorage.getItem('token')
}
}
}
getRouteResolver() {
let self = this
return function (value, options) {
let replacements = self.getRouteReplacements(value, options); // Replace all route parameters with their replacement values.
let replaced = reduce(replacements, function (result, value, parameter) {
return replace(result, parameter, value);
}, value)
return config.VIKUNJA_API_BASE_URL + URL_PREFIX + replaced
}
getTitle() {
return this.title;
}
// Route configuration
routes() {
return {
fetch: '/lists/{id}',
save: '/lists/{id}',
update:'/namespaces/{namespaceID}/lists',
delete: '/lists/{id}',
}
}
*/
}