summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/client/pages/not-found.vue36
-rw-r--r--src/client/router.ts2
2 files changed, 37 insertions, 1 deletions
diff --git a/src/client/pages/not-found.vue b/src/client/pages/not-found.vue
new file mode 100644
index 0000000000..05bd347724
--- /dev/null
+++ b/src/client/pages/not-found.vue
@@ -0,0 +1,36 @@
+<template>
+<div class="">
+ <portal to="icon"><fa :icon="faExclamationTriangle"/></portal>
+ <portal to="title">{{ $t('notFound') }}</portal>
+
+ <section class="_card">
+ <div class="_title"><fa :icon="faExclamationTriangle"/> {{ $t('notFound') }}</div>
+ <div class="_content">{{ $t('notFoundDescription') }}</div>
+ </section>
+</div>
+</template>
+
+<script lang="ts">
+import Vue from 'vue';
+import { faExclamationTriangle } from '@fortawesome/free-solid-svg-icons';
+import i18n from '../i18n';
+
+export default Vue.extend({
+ i18n,
+
+ metaInfo() {
+ return {
+ title: this.$t('notFound') as string
+ };
+ },
+
+ data() {
+ return {
+ faExclamationTriangle
+ }
+ },
+});
+</script>
+
+<style lang="scss" scoped>
+</style>
diff --git a/src/client/router.ts b/src/client/router.ts
index 70bc48c49e..c1140355fd 100644
--- a/src/client/router.ts
+++ b/src/client/router.ts
@@ -53,7 +53,7 @@ export const router = new VueRouter({
{ path: '/auth/:token', component: page('auth') },
{ path: '/authorize-follow', component: page('follow') },
{ path: '/share', component: page('share') },
- /*{ path: '*', component: MkNotFound }*/
+ { path: '*', component: page('not-found') }
],
// なんかHacky
// 通常の使い方をすると scroll メソッドの behavior を設定できないため、自前で window.scroll するようにする