この記事は2020年03月31日に投稿しました。
目次
リンク
1. はじめに
こんにちは、iOSのエディタアプリPWEditorの開発者の二俣です。
今回は業務で使用しているVue.jsでVuexを使用する方法についてです。
2. Vue.jsでVuexを使用する
Vue.jsでVuexを使用するには、以下の様な実装にします。
この実装例は、ほぼVuexの公式リファレンスのままです。
今の段階で理解した内容を、実装例の中にコメントとして記述してあります。
(そのため間違いがあるかもしれません...)
実装例
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <title>Sample</title> </head> <body> <!-- 'app'のタグはVue.jsによって操作されます。 --> <div id="app"> <p>{{ count }}</p> <p> <button @click="increment">+</button> <button @click="decrement">-</button> </p> </div> <!-- Vue.jsを使用します。 --> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <script src="vue.js"></script> <!-- Vuexを使用します。 --> <script src="Vuex.js"></script> <!-- VuexはPromiseを使用するため、未対応のブラウザ用にes6-promise.auto.jsを使用します。 --> <script src="es6-promise.auto.js"></script> <!-- Vue.jsで操作する内容です。 --> <script> Vue.config.productionTip = false // Vuexのストアを定義します。 const store = new Vuex.Store({ state: { // カウント値を保持する変数を定義します。 count: 0 }, mutations: { // カウント値を+1します。 increment: state => state.count++, // カウント値を-1します。 decrement: state => state.count-- } }) var app = new Vue({ // divタグの'app'内を操作対象とします。 el: '#app', computed: { count() { // Vuexのcountの値を返却します。 return store.state.count } }, methods: { increment() { // Vuexで定義した"increment"を呼び出します。 store.commit('increment') }, decrement() { // Vuexで定義した"decrement"を呼び出します。 store.commit('decrement') } } }) </script> </body> </html>
3. おわりに
VuexはVue.jsで状態管理を行うためのライブラリのようです。
今のところ何のために必要かあまり理解していませんが、学習しながら理解していきたいと思います。
リンク
紹介している一部の記事のコードはGitlabで公開しています。
興味のある方は覗いてみてください。
私が勤務しているニューラルでは、主に組み込み系ソフトの開発を行っております。
弊社製品のハイブリッドOS Bi-OSは高い技術力を評価されており、特に制御系や通信系を得意としています。
私自身はiOSモバイルアプリやウィンドウズアプリを得意としております。
ソフトウェア開発に関して相談などございましたら、お気軽にご連絡ください。
また一緒に働きたい技術者の方も随時募集中です。
興味がありましたらご連絡ください。
EMAIL : info-nr@newral.co.jp / m-futamata@newral.co.jp
TEL : 042-523-3663
FAX : 042-540-1688