質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Vuex

Vuexは、Vue.js アプリケーションのための状態管理ライブラリです。アプリケーション内で使用するコンポーネントのための集中データストアを提供。コンポーネント同士でデータをやり取りし、処理のフローを一貫させたり、データの見通しを良くすることができます。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

868閲覧

JavaScriptの記法の意味を知りたいです

nabe_R

総合スコア2

Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Vuex

Vuexは、Vue.js アプリケーションのための状態管理ライブラリです。アプリケーション内で使用するコンポーネントのための集中データストアを提供。コンポーネント同士でデータをやり取りし、処理のフローを一貫させたり、データの見通しを良くすることができます。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

1クリップ

投稿2020/11/01 05:25

解決したいこと

const gettersの1,2行目の解読

Vuexの学習中に起きた疑問

src/store/modules/counter.js

1const state = { 2 step: 1, 3 count: 0, 4} 5 6const getters = { 7 step: state => state.step, 8 count: state => state.count, 9 10 // step() {(state) => { 11 // return state.step 12 // }}, 13 // count() {(state) => { 14 // return state.count 15 // }} 16} 17. 18. 19. 20以下質問に関係ないと思うので省略

gettersにあるstep:とcount:のコードが理解できなかったので有識者の方に伺いたいです。
私はコメントアウトしているコードのようにアロー関数の省略かと思いましたが、表示されないので詰まりました。

こちらがコメントアウトしていない
正
コメントアウトしたコードの場合
誤

参考リンク

学習中に使っているQiitaの記事
アロー関数参考記事

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

const getters = { step: function(state) {return state.step}, }

レガシーに寄せるとこういう事になります。

step() {(state) => { // return state.step // }},

これは

step(state){ return state.step },

正しくはこうです。

投稿2020/11/01 05:39

mikkame

総合スコア5036

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nabe_R

2020/11/01 06:08

レガシーに寄せていただいたことで理解できました! ありがとうございます! コメントアウト部分も書き方間違っている+正しい書き方はアロー関数ではない。 という理解で合っていますか? こちらに関しましては私の甘えですので無視していただいても何ら問題ございません。
mikkame

2020/11/01 08:14

これには関数の定義と、オブジェクト作成方法の2つの話が噛み合っていて、複数の書き方があります。 関数の定義 → アローは無名になるため、オブジェクトのプロパティ名を書くためstep: state => となっています。 function () {}も無名なので、プロパティ名が必要です。 step(state) は、プロパティ名を省略したnamedの関数定義です。
think49

2020/11/01 09:07 編集

> 関数の定義 → アローは無名になるため、オブジェクトのプロパティ名を書くためstep: state => となっています。 function () {}も無名なので、プロパティ名が必要です。 因果関係にやや語弊があります。 名前付き関数式を指定しても、プロパティ名の省略が出来ません。 const getters = { step: function step (state) {return state.step}}; 省略記法は「プロパティ名」と「プロパティ値」を同時に指定します。 関数名の有無は直接的には関係しないと思います。
nabe_R

2020/11/01 13:10

mkkame様、think49様ありがとうございます! プロパティ名が肝なのですね!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問