Lessons by WebAssembly app in production on CDN Edge Computing Service
Lessons by WebAssembly app in production on CDN Edge Computing Service
mizchi/redux-workerized 作った。 yarn add redux-workerize で入る。 元々は react-hooks で redux へのアダプタを書いていただけのライブラリだったが… TypeScript フレンドリーなAPIにする ReactRedux.Provider の異なるAPI表現だけじゃ面白くない じゃあ Redux.Store を worker に置いて postMessage で更新しよう mapStateToProps や更新処理の抑制の処理もCPU使うから、worker に置こう JSON飛び交ってるだけだし、 React だけじゃつまらないから Vue Plugin も提供しよう 結果、ビジネスロジックが Worker に切り出された上で、 React と Vue が同じ Store を共有するようになった。 どうなってるかというと
これらはmap系はthis.$storeなんたらの糖衣構文です。つまり、アクションが実行されるVueコンポーネントにstoreがインストールされている必要があります。 例えばよくあるmodalとかdialogとかの実装を見ると、new Vue()して、それでモーダルコンポーネント内に自分たちが書いたHTML等を飛ばしてマウントするという手法を取る実装があります。これはVueの仮想DOMのTreeを破壊しないVueフレンドリーな実装です。 しかし、new Vueをするという事は、そこでstoreを与える必要がありますが、大抵のライブラリはそれには対応していないでしょう。もちろんthis.$routeなどのvue-routerへのアクセスも同じです。 一応こちらがElementUIの参考実装です。 https://github.com/ElemeFE/element/blob/dev/pack
スタディスト開発部、フロントエンド担当の小宮山です。走ることが楽しくなりすぎてフルマラソン完走が当面の目標です。 今回は私達が進めているUIリニューアルプロジェクトにおける、フロントエンド設計の心臓部についてご紹介したいと思います。盛り上がりつつあるものの、まだまだ実践的な情報が少ないVue界隈に少しでも貢献できましたら幸いです。 画面駆動Vuexの頃プロジェクト始動当時は私含め大規模プロダクトにVuex(さらにその他Flux状態管理も)を導入して開発を進める経験も知見もほぼない状況でした。 そして開発していく画面デザインの大枠は出揃っている状態だったので、計画も実装も画面単位で区切って進みだしていきます。 こうした状況でVuexのstoreはどのような方針で実装されていくか。正確に表現するなら、特に方針なく実装していくとどうなるか。画面ファーストで、画面から使いやすく、画面ごとに専用なs
はじめに 私はVue.js with Vuexを使った業務で1画面30APIを叩く必要のある画面から、たったの数APIしか叩かないけれど、代わりにUIがとても機能的で複雑な画面まで設計し、構築しました。 現在は構築したシステムを保守・運用しており、その際に得られたノウハウを言語化し、共有出来たらと思います。 ※ 記事の内容に意見がありましたら直接編集リクエストをください。 ※ パフォーマンスの話はしません。 ゴール 役立つTipsを身につけコード品質を向上させる コンポーネントのバグを減らせるTips ほとんどのバグは変数から来ます。 もし全ての値が定数なら状態から来るバグはほとんど無くなるでしょう。 ここではこの変数や式を極力減らせるTipsを紹介したいと思います。 1. dataを極力定義しない Vue.jsでコンポーネントを定義する際ついdata()に沢山変数を定義しちゃいますよね。
この記事はVue.js アドベントカレンダー #3 24日目の記事です。 みなさん今日はクリスマスイブですね。今年のイブは日曜日ということもあり、一般的には会社は休みですので、恋人と過ごす人、友人と過ごす人、家族と過ごす人と様々ではないでしょうか。私も夜にはホームパーティを控えていたりします。 そんな本日のアドベントカレンダーですが、クリスマスとは全く関係なく、真面目にVuexアプリケーションにおけるv-modelとの付き合い方について考えたいと思います。 VueとVuex間での責務の衝突とジレンマ JavaScriptでそれなりに凝ったWebアプリケーションを開発する時、特にSPAを開発する時は、Fluxパターンもしくはその派生ライブラリを扱うことが非常に多いかと思います。 Vue.jsにおいても、本格的な状態管理についてはVue.js謹製ライブラリであるVuexを利用することができます
Vue.js+vuexでログイン処理を書いているのですが、 ログイン処理の書き方に迷っています。 ログインでトークンを作成し、 API呼び出しの度にトークンを引き回して使用したいのですが、 最初のログイン時、APIでトークンが無効だったなど、 何かしらログインが無効になった時に任意の画面にログインダイアログを出そうと思っています。 その際に、どこでログイン処理をして、どこでダイアログを書けばいいのか困っています。 vuexのstore内のアクションでログイン処理をしようとしたのですが、 アクション内だとダイアログが出せず、別途コンポーネントとしてダイアログを実装し、 各画面に置かねばなりません。 これは少し冗長かなと感じています。 出来れば下記のようにログイン処理を呼び出したら完結するようにしたいのですが、 それはそれで出来たとしてもVuexを使った正しい書き方のような気がしません。 Vu
Posted: 2017.05.09 / Category: javascript / Tag: Vue 前回、Vue.jsコンポーネント間の値のやりとりについてをやりましたが、この方法だとコンポーネントが増えていくといわゆるバケツリレー状態になり管理が難しくなります。 そんなときは状態管理パターン+ライブラリであるVuexを使用すれば解決してくれるみたいですよ。 vue 2.2.1 vuex 2.3.1 でお送りします。 準備 今回はvue-cliのwebpackで試してみます。 インストールしていない場合は下記で vue-cli をグローバルにインストール。 $ sudo npm install -g vue-cli これでvueコマンドが使えるので、プロジェクトを作成しカレントにします。 $ vue init webpack-simple vuex-test $ cd vuex-te
最近Vue/Vuexを触っている。 前々から欲しいと思っていたのもあって、習作としてelectronでYouTubeのデスクトップクライアントを作った。 github.com 僕は仕事中はだいたいYouTubeを再生している。映像を見ながらコードを書きたい欲求があった。とはいえ、そのために作業領域を侵食されるのはつらい。 ということで前面に固定する機能と透過率を設定できる機能をつけた。 こんな感じになって便利。 Vueにおいて、TypeScriptを選ぶかFlowを選ぶか Vueにおいて、楽をしたいならTypeScriptを選ぶ方が良い。Flowに比べて、公式のサポートが断然に厚い。 公式ページにもサポートについて1セクション割かれている。 TypeScript Support — Vue.js また、TypeScriptチームがVueとTypeScriptのStarter Kitを公開し
はじめに vue.js使うことになりそうなので少しいじってみたのでメモしておく。 とりあえず今回やってみようと思ったことは以下 ・ヘッダー、フッター、メニューなどの共通化 ・vue-routeを使ったルーティング ・ログイン機能 ・APIへのリクエスト ・vuexの導入 セットアップ プロジェクトを作成してvuexとaxiosをインストール。vueでのajaxしたい場合axiosが奨励されてるぽい? $ vue init webpack test $ npm install --save vuex axios作る画面 ・ログイン画面 ・商品一覧画面 ・商品詳細画面 こんなかんじの管理画面とかでありそうな画面を想定。ログイン画面以外に未ログイン状態でアクセスしたらログイン画面へリダイレクト。商品一覧と詳細画面ではAPIへリクエストして取得したjsonを画面へ表示する。 ディレクトリ構成 vu
最新の dex.fm — Development at Mercari US で、Redux でのエラーの扱いについての言及があって、自分は Vuex (Redux インスパイアな Vue の状態管理ライブラリ)でどうやっていたっけな、というのを文章で簡単に書いておきます。あくまで個人の考えです。 予め、Vuex の Action は、Redux の Action とは異なることを書いておきます。Vuex の Action は、純粋な State の変更を行う前の非同期や副作用が伴う処理を指し、純粋な State の変更は Mutation でおこなっています。Redux での非同期処理の扱いについて書かれた ReduxでのMiddleware不要論 - Qiita の記事の ActionDispatcher に近いものです。 Vuex でのエラーの扱いに関しては コンポーネント内で閉じる
At some point when building applications you will need to begin thinking about how to manage state. Vue provides a simple way to work with local state inside a component. Below is an example of loading some data from an api and setting it on the local state variable projects: import axios from 'axios'export default { name: 'projects', data: function () { return { projects: [] } }, methods: { loadP
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く