院卒新人サラリーマンのメモ代わり

備忘としてのメモを記載

2018-07-01から1ヶ月間の記事一覧

グリッドレイアウトで遊ぶ

グリッドレイアウトってめっちゃ便利やね。 これあればmarginいらないんじゃないのって思ってたらそんな記事があった。 これからのCSSはmargin禁止!?CSSグリッドレイアウトやコンポーネント指向なCSSについて、矢倉さんに聞いてきた! | HTML5Experts.jpbo…

grid入れ子

css gridは入れ子ができる。 bodyで全体をグリッドに分け 細かいのはそれぞれでまたグリッドにすると見やすそう。細かいマージンはグリッドで作らずにそれぞれの要素で作る

css gridとflex

3章まで読み終わった。 わかりやすいし、サンプルもとてもよい。 css gridを使いこなせれば好きなレイアウトが作れるような気にさせてくれる。 自分でなにか作る際は積極的に使って練習しよう。ただ、全く同じ名前の本があるのはいただけない。 検索しづらい…

関数型プログラミング2

JavaScriptユーザのための関数型プログラミング(前編) | POSTD概要を把握するだけならここがとてもわかりやすい

関数型プログラミング

読んでいる最中。 日本語訳が下手で読みにくい。 関数型プログラミングとは何なのかだけでも理解したい。

研究はお休み

研究はしばらくお休みするcheckioを進めた

研究への不安

研究が進まず不安でお腹が痛いしよく眠れない。不安に対して認知療法 不安を簡単に取り除く方法 【精神科医・樺沢紫苑】 - YouTube不安の90%は現実には起こらない。 ほとんどが取り越し苦労である。その上で解消法は2つ。 1つ目は日記を書く。 どんなときに…

CheckiOを始める

checkioをはじめた homeを終えたぐらいだけどちょうどいい難易度で勉強になる

forとforEach

forは言語構文である forの中に書かれる文は単純に繰り返されるだけ returnすると外側で実行しているメソッドの返り値となるforEachはメソッドである forEachに渡されるのは関数であり、これが1要素ごとに適用される returnすると関数を現在適用している要素…

真偽値

rubyの真偽値 偽 - nil, falseのみ 真 - 偽以外javascriptの真偽値 偽 - null, false, undefined, 0, NaN, ""(空文字) 真 - 偽以外javascriptで下記のように書いたときの注意点 if (hoge) { ... } ・hoge=0もfalseになる ・hoge=""はfalseだが、hoge=[]とhog…

存在しない配列へのアクセス

let data = [[11,12],[21,22],[31,32]] console.log(data[-1]) //undefined console.log(data[-1][1]) // Cannot read property '1' of undefined 存在しない配列へアクセスするとundefinedになる しかし、2次元配列だとエラーになってしまう。 だから存在し…

配列のメソッド

forEach 配列の値を元に処理を行う 値は返さない map 元の配列の値を変形させたものを返す filter 元の配列から条件に当てはまるものを返す reduce 元の配列を使って結果を返す

javascript 型の確認

console.log(toString.call([1,2,3])) // [object array] toString.call(target)を使う

スプレッド演算子

スプレッド演算子と残余引数は見た目は同じだけど若干違う スプレッド演算子 ばらして渡す //個々の値に展開する1 let arr = [a,b,c,d] Math.max(a,b,c,d) //一つずつしか引数を渡せない Math.max(...arr) //まとめて渡しても展開してくれる //個々の値に展…

オブジェクトでソート

javascriptのソートは自分で大小の関数を書かないといけない。 めんどいと思ってたけどおかげで柔軟にかけそう。 オブジェクトの値でソートする方法 function objSort(data) { return data.sort((a, b) => b.price - a.price) } objSort([ {"name": "meat", …

正規表現に変数を使う in javascript

javascriptでの正規表現の使い方 string.match(/正規表現/g) //正規表現をスラッシュで囲む、最後にgを付けると配列で結果を返してくれる //次に変数を使う場合 let reg = new RegExp(`正規表現`,'g'); string.match(reg) //RegExpを使い、文字列で指定 //バ…

array-like オブジェクト

javascriptには見た目はarrayっぽいけどarrayじゃないってオブジェクトがいくつかある。 nodelistやstringなど arrayだったらforEach使えるのになって時に無理やり使う方法まとめ。 let moz = 'hello' Array.prototype.forEach.call(moz, (el) => { }) ;[].f…

javascript

文字列の取り出し方 string.substr(開始位置, 切り出す長さ ) 戻り値 = 切り出した文字 元の文字列 = 元のまま配列の取り出し方 array.splice(開始位置, 切り出す長さ ) 戻り値 = 切り出した値が配列で入る 元の配列 = 切り出された値いろいろあるけどとりあ…

ベジェ曲線を学ぶ

adobe Xdでお絵かき学ぼうとしたらアンカーやハンドルとかわからないから調べた。 ベジェ曲線というのがあるらしい。 ガバガバ理解でまとめる。 以下、2つの関数の間の点を求めることを線形補間という。 始点と終点を線形補間すると得られる線分を1次ベジェ…

カスタムコンポーネントでv-model

//親 <MyComp v-model="data"/> //子 props:['value'], data:{ return{ data: this.value } } watch:{ data(val){ this.$emit('input',val) } v-model使うと名前がvalueになっちゃうからdataでローカル変数にする。 watchで変更があるたびに親に渡す。 これでカスタムコンポーネント</mycomp>…

svgを触る

vueと相性が良いらしいsvgを触る

コンポーネント間のデータのやり取り

//親→子 //親 属性で指定 <MyComp :data="data"/> //子 propsで受け取る props:[data] //子→親 (個人的にわかりやすいやつ) //親 v-modelで受け取る <MyComp v-model="data"/> //子 emitで送る @input=$emit('input',data) //子→子 vuexを使う</mycomp></mycomp>

vuex画像について

よくわからないけどパスをrequire()で囲まないと読み込まないことがある。 何でだろう Vue.jsでimgタグのsrcをバインドさせる際の注意点

vuex整理

//store.js const moduleA = { namespaced: true, state: { count: 0, msg: '' }, mutations: { increment (state, num) { state.count += num }, setMsg(state, msg){ state.msg = msg } } }; const moduleB={省略} export default new Vuex.Store({ module…

vuex

vuexでいくつかの状態を扱うためにモジュール化してみた。モジュール化すると this.$store.state.モジュール名.stateの値 のようにstateにアクセスする際にモジュール名を入れる必要がある。 アクション、ミューテーション、ゲッターはデフォルトでグローバ…

vue.jsにてモーダルの実装

cssでのハンガーバーメニューと考え方はほぼ同じだが、実装がだいぶ楽。 ついでにbulma(cssフレームワーク)も使えばレイアウトも簡単。 というかbulmaのモーダルのドキュメントに@clickイベントいくつか付けるだけでできる。 (vueの方でmodalプロパティも必…

切り替えタブ

切り替えタブ | 基礎から学ぶ Vue.js を読んでいて詰まったこと(本は買って読みました) <TabItem v-for="item in list" v-bind="item" :key="item.id" v-model="currentId"/> v-model カスタムコンポーネントを一つの入力フォームのように使える v-bind 引数を省略するとオブジェクトを渡せるv-bindに関してはオブジェクト名を属性として渡し</tabitem>…

v-modelはシンタックスシュガー

<input v-model="searchText"> ってやるとデータバインディングしてくれる これは以下の構文のシンタックスシュガー <input v-bind:value="searchText" v-on:input="searchText = $event.target.value" > inputがあるたびにvalueを更新 だからカスタムコンポーネントで使うには props: ['value'] v-on:input="$emit('input', 送りたい値)" で使える 親の値を子の入力で変更…

vue-cli3

vue-cliのバージョン3を使ってみる。 guiでプラグインの管理ができてとても便利。

nuxtとは

Vue.js VueRouter Vuex VueServerRenderer VueMetaをまとめてくれてるらしい 下2つを調べる