//const Vue = require('vue'); //const buttonList = require('./buttonList.vue'); const r = require('./request.js')('/v1'); function create() { this.ready = false; r.post('/button').then(response => { if (response.ok) { response.json().then(button => { this.buttons.push(button); this.ready = true; }); } }); } function update(index) { var button = this.buttons[index]; this.ready = false; r.put('/button', button).then(() => { this.ready = true; }); } function remove(index) { var button = this.buttons[index]; this.ready = false; r.delete('/button', button).then(response => { if (response.ok) { response.json().then(() => { this.buttons.splice(index, 1); this.ready = true; }); } }); } const $app = new Vue({ el: '#container', data: { ready: false, buttons: [] }, methods: { create, remove, update } }); // GET /button r.get('/button').then(response => { if (response.ok) { return response.json(); } throw new Error(response.status); }).then(data => { $app.buttons = data; $app.ready = true; }).catch(err => { console.log('Request failed with error:', err.message); });