homer/app.js
2018-06-16 15:48:28 -07:00

43 lines
1.1 KiB
JavaScript

var app = new Vue({
el: '#app',
data: {
config: null,
filter: ''
},
beforeCreate () {
let that = this;
return getConfig().then(function (config) {
console.log(config);
const size = 3;
config.services.forEach(function(service) {
service.rows = [];
items = service.items;
while (items.length) {
service.rows.push(items.splice(0, size));
}
if (service.rows.length) {
let last = service.rows.length-1;
service.rows[last] = service.rows[last].concat(Array(size - service.rows[last].length));
}
});
that.config = config;
}).catch(function () {
console.error('Fail to get config');
});
}
});
function getConfig() {
return fetch('config.yml').then(function(response) {
if (response.status !== 200) {
return;
}
return response.text().then(function(body){
return jsyaml.load(body);
});
});
}