sharkey/src/client/app/desktop/views/components/lists-window.vue

47 lines
985 B
Vue
Raw Normal View History

2018-04-25 06:34:50 +09:00
<template>
<mk-window ref="window" is-modal width="500px" height="550px" @closed="$destroy">
<span slot="header" :class="$style.header">%fa:list% リスト</span>
2018-04-25 12:36:54 +09:00
<button class="ui" @click="add">リストを作成</button>
<router-link v-for="list in lists" :key="list.id" :to="`/i/lists/${list.id}`">{{ list.title }}</router-link>
2018-04-25 06:34:50 +09:00
</mk-window>
</template>
<script lang="ts">
import Vue from 'vue';
export default Vue.extend({
data() {
return {
fetching: true,
lists: []
};
},
mounted() {
(this as any).api('users/lists/list').then(lists => {
this.fetching = false;
this.lists = lists;
});
},
methods: {
2018-04-25 12:36:54 +09:00
add() {
(this as any).apis.input({
title: 'リスト名',
}).then(async title => {
const list = await (this as any).api('users/lists/create', {
title
});
this.$router.push(`i/lists/${ list.id }`);
});
},
2018-04-25 06:34:50 +09:00
close() {
(this as any).$refs.window.close();
}
}
});
</script>
<style lang="stylus" scoped>
</style>