Skip to content

Instantly share code, notes, and snippets.

View potato4d's full-sized avatar
💭
It's not so easy to be consistent

Takuma HANATANI potato4d

💭
It's not so easy to be consistent
View GitHub Profile
@potato4d
potato4d / file0.txt
Created October 4, 2018 08:42
Nuxt.js アプリケーションに簡単にベーシック認証を付与できる nuxt-basic-auth-module のご紹介 ref: https://qiita.com/potato4d/items/e37d9acf320d7c1b327c
$ yarn add nuxt-basic-auth-module
// 現実
const { app, h } = hyperapp
/** @jsx h */
const state = {
isInited: false,
users: []
}
const actions = {
@potato4d
potato4d / index.js
Created August 5, 2018 23:59
nuxt-client-init-module を使って Nuxt.js にクライアントサイド限定の初期化処理を追加する ref: https://qiita.com/potato4d/items/cc5d8ea24949e86f8a5b
export const state = () => ({
isCalled: false
})
export const getters = {
isCalled: (state) => state.isCalled
}
export const mutations = {
setIsCalled(state) {
@potato4d
potato4d / build.js
Created July 13, 2018 16:18
c94 markdown builder
const ejs = require('ejs')
const util = require('util')
const promisify = util.promisify
const inspect = util.inspect
const glob = promisify(require('glob'))
const fs = require('fs')
const chalk = require('chalk')
const moment = require('moment')
const markdownIt = require('markdown-it')
@potato4d
potato4d / auth.js
Last active October 16, 2019 06:23
【実録】Nuxt.jsの既存プロジェクトを一足早くNuxt v2へとアップグレードする方法 ref: https://qiita.com/potato4d/items/7b3119c88869d7622a7d
export default async function(context) {
- const { app, store, route, redirect, isServer, req } = context
+ const { app, store, route, redirect, req } = context
- if (isServer) {
+ if (process.server) {
// 認証の処理
} else {
// クライアントでの処理
}
// ...
@potato4d
potato4d / file1.html
Created March 17, 2018 03:34
NuxtのSSRモードで一部だけSSRをスキップする方法 ref: https://qiita.com/potato4d/items/04d3767aaa036f557950
<body data-n-head="">
<div data-server-rendered="true" id="__nuxt"><div class="nuxt-progress" style="width:0%;height:2px;background-color:#3B8070;opacity:0;"></div><div id="__layout"><div><div><h1>Hello</h1><div class="no-ssr-placeholder"></div></div></div></div></div><script type="text/javascript">window.__NUXT__={"layout":"default","data":[{}],"error":null,"serverRendered":true};</script><script src="/_nuxt/manifest.js" defer></script><script src="/_nuxt/vendor.js" defer></script><script src="/_nuxt/app.js" defer></script>
</body>
@potato4d
potato4d / JavaScript
Last active December 2, 2019 09:51
フロントエンドのバリデーションを hapi の joi で行うと手軽で便利 ref: https://qiita.com/potato4d/items/e2c88c940516aeb369b0
import Joi from 'joi-browser'
@potato4d
potato4d / Vuexで愚直に実装した例
Created December 24, 2017 03:29
実例からみるVuexアプリケーションにおけるv-model/computedとの付き合い方 ref: https://qiita.com/potato4d/items/f4b90a907c955e6679df
<div id="app">
<p>Component:</p>
<template v-if="isEdit">
<input type="text" :value="foo" @input="onInput">
<button type="button" @click="toggleEdit">Cancel</button>
</template>
<template v-else>
<span>{{foo}}</span>
<button type="button" @click="toggleEdit">Edit</button>
</template>
@potato4d
potato4d / OAuthサンプル
Last active April 7, 2020 14:57
【v2対応】Nuxt.jsとFirebaseを組み合わせて爆速でWebアプリケーションを構築する ref: https://qiita.com/potato4d/items/cfddeb8732fec63cb29c
import firebase from 'firebase'
const provider = new firebase.auth.GoogleAuthProvider()
firebase.auth().signInWithRedirect(provider)
@potato4d
potato4d / AccountInfo.type.js
Created October 19, 2017 06:57
Vue.jsのpropsカスタムバリデーターを使った堅牢なコンポーネント作成 ref: http://qiita.com/potato4d/items/1b92df0cbf9b0b6cf8d6
export const accountKeys = [
'id',
'name',
'bio'
];