Kaynağa Gözat

docs(ja): update ja docs (#1400)

* docs(ja): pick up

ref: https://github.com/vuejs/vuex/commit/f5ff95eafdf0baa7083517204af75938214bca58

* docs(ja): translate previous commit

* docs(ja): pick up

ref: https://github.com/vuejs/vuex/commit/af46a3c2436ef0b029410290b837f4cf807262eb

* docs(ja): translate previous commit

* docs(ja): translate api docs

ref: https://github.com/vuejs/vuex/commit/432487b3e401318c41aa6c64a0bd1edc9c6884bc

* docs(ja): pick up

ref: https://github.com/vuejs/vuex/commit/d16c90688dfe1460a2125079ba1bb3eabcc61035

* docs(ja): translate previous commit

* docs(ja): some tweaks

ref: https://github.com/vuejs/vuex/commit/677e69a846969200368c6447ece1417d46f65a0f
ref: https://github.com/vuejs/vuex/commit/d1c834a32e44eef9019a5d1ec99e3bb02ae46bd2

* docs(ja): pick up

ref: https://github.com/vuejs/vuex/commit/4a0d959ac481b112c1c0525a2cc1dfffae13afd7

* docs(ja): translate previous commit

* docs(ja): pick up

ref: https://github.com/vuejs/vuex/commit/5dec460d1ef1ab3f3632c5be0d53ea71b5b740a8

* docs(ja): fix review comments

* docs(ja): プロミス -> Promise
kazuya kawaguchi 6 yıl önce
ebeveyn
işleme
08bd0d90f6

+ 16 - 8
docs/ja/api/README.md

@@ -154,15 +154,15 @@ const store = new Vuex.Store({ ...options })
 
 ### watch
 
-- **`watch(getter: Function, cb: Function, options?: Object)`**
+- **`watch(fn: Function, callback: Function, options?: Object): Function`**
 
-  リアクティブにゲッター関数の返す値を監視します。値が変わった場合は、コールバックを呼びます。ゲッターはストアの `state` を最初の引数として、 `getters` を2番目の引数として受け取ります。 Vue の`vm.$watch`メソッドと同じオプションをオプションのオブジェクトとして受け付けます。
+  リアクティブに`fn`の返す値を監視します。値が変わった場合は、コールバックを呼びます。ゲッターはストアの `state` を最初の引数として、 `fn` を2番目の引数として受け取ります。 Vue の`vm.$watch`メソッドと同じオプションをオプションのオブジェクトとして受け付けます。
 
-  監視を止める場合は、ハンドラ関数の返り値を関数として呼び出します。
+  監視を止める場合は、返された unwatch 関数を呼び出します。
 
 ### subscribe
 
-- **`subscribe(handler: Function)`**
+- **`subscribe(handler: Function): Function`**
 
   ストアへのミューテーションを購読します。`handler` は、全てのミューテーションの後に呼ばれ、引数として、ミューテーション ディスクリプタとミューテーション後の状態を受け取ります。
 
@@ -173,6 +173,8 @@ const store = new Vuex.Store({ ...options })
   })
   ```
 
+  購読を停止するには、返された unsubscribe 関数呼び出します。
+
   プラグインの中でもっともよく利用されます。[詳細](../guide/plugins.md)
 
 ### subscribeAction
@@ -216,15 +218,17 @@ const store = new Vuex.Store({ ...options })
 
 ### mapState
 
-- **`mapState(namespace?: string, map: Array<string> | Object): Object`**
+- **`mapState(namespace?: string, map: Array<string> | Object<string | function>): Object`**
 
   ストアのサブツリーを返すコンポーネントの computed オプションを作成します。[詳細](../guide/state.md#the-mapstate-helper)
 
   第1引数は、オプションで名前空間文字列にすることができます。[詳細](../guide/modules.md#binding-helpers-with-namespace)
 
+  第2引数のオブジェクトのメンバーには関数 `function(state: any)` を指定できます。
+
 ### mapGetters
 
-- **`mapGetters(namespace?: string, map: Array<string> | Object): Object`**
+- **`mapGetters(namespace?: string, map: Array<string> | Object<string>): Object`**
 
   ゲッターの評価後の値を返すコンポーネントの computed オプションを作成します。[詳細](../guide/getters.md#the-mapgetters-helper)
 
@@ -232,20 +236,24 @@ const store = new Vuex.Store({ ...options })
 
 ### mapActions
 
-- **`mapActions(namespace?: string, map: Array<string> | Object): Object`**
+- **`mapActions(namespace?: string, map: Array<string> | Object<string | function>): Object`**
 
   アクションをディスパッチするコンポーネントの methods オプションを作成します。[詳細](../guide/actions.md#dispatching-actions-in-components)
 
   第1引数は、オプションで名前空間文字列にすることができます。[詳細](../guide/modules.md#binding-helpers-with-namespace)
 
+  第2引数のオブジェクトのメンバーには関数 `function(dispatch: function, ...args: any[])` を指定できます。
+
 ### mapMutations
 
-- **`mapMutations(namespace?: string, map: Array<string> | Object): Object`**
+- **`mapMutations(namespace?: string, map: Array<string> | Object<string | function>): Object`**
 
   ミューテーションをコミットするコンポーネントの methods オプションを作成します。[詳細](../guide/mutations.md#commiting-mutations-in-components)
 
   第1引数は、オプションで名前空間文字列にすることができます。[詳細](../guide/modules.md#binding-helpers-with-namespace)
 
+  第2引数のオブジェクトのメンバーには関数 `function(commit: function, ...args: any[])` を指定できます。
+
 ### createNamespaceHelpers
 
 - **`createNamespacedHelpers(namespace: string): Object`**

+ 1 - 1
docs/ja/guide/getters.md

@@ -109,7 +109,7 @@ export default {
 
 ``` js
 ...mapGetters({
-  // `this.doneCount` を `store.getters.doneTodosCount` にマッピングさせる
+  // `this.doneCount` を `this.$store.getters.doneTodosCount` にマッピングさせる
   doneCount: 'doneTodosCount'
 })
 ```

+ 26 - 0
docs/ja/guide/modules.md

@@ -170,6 +170,32 @@ modules: {
 }
 ```
 
+#### 名前空間付きモジュールでのグローバルアクションへの登録
+
+名前空間付きモジュールでグローバルアクションに登録したい場合、`root: true` でそれをマークでき、そしてアクション定義を `handler` 関数に置くことができます。例えば:
+
+``` js
+{
+  actions: {
+    someOtherAction ({dispatch}) {
+      dispatch('someAction')
+    }
+  },
+  modules: {
+    foo: {
+      namespaced: true,
+       actions: {
+        someAction: {
+          root: true,
+          handler (namespacedContext, payload) { ... } // -> 'someAction'
+        }
+      }
+    }
+  }
+}
+```
+
+
 #### 名前空間によるバインディングヘルパー
 
 `mapState`、`mapGetters`、`mapActions`、そして `mapMutations` ヘルパーを使って名前空間付きモジュールをコンポーネントにバインディングするとき、少し冗長になります:

+ 17 - 0
docs/ja/guide/testing.md

@@ -127,6 +127,23 @@ describe('actions', () => {
 })
 ```
 
+テスト環境において利用可能なスパイがあるのなら(例えば[Sinon.JS](http://sinonjs.org/))、`testAction` ヘルパーの代わりにそれらを使用できます:
+ ``` js
+describe('actions', () => {
+  it('getAllProducts', () => {
+    const commit = sinon.spy()
+    const state = {}
+
+    actions.getAllProducts({ commit, state })
+
+    expect(commit.args).to.deep.equal([
+      ['REQUEST_PRODUCTS'],
+      ['RECEIVE_PRODUCTS', { /* レスポンスのモック */ }]
+    ])
+  })
+})
+```
+
 ### ゲッターのテスト
 
 もしゲッターが複雑な計算を行っているならば、テストコードを書く価値があります。ゲッターはミューテーションと同様の理由でテストしやすいです。

+ 25 - 0
docs/ja/installation.md

@@ -38,6 +38,31 @@ Vue.use(Vuex)
 
 グローバルなスクリプトタグを利用する場合にはこのようにする必要はありません。
 
+### Promise
+
+Vuex は [Promise (プロミス)](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Using_promises) を必要とします。ブラウザで Promise が実装されていない(例 IE)場合は、[es6-promise](https://github.com/stefanpenner/es6-promise) のようなポリフィルライブラリを使用できます。
+
+CDN 経由でそれを含めることができます:
+
+``` html
+<script src="https://cdn.jsdelivr.net/npm/es6-promise@4/dist/es6-promise.auto.js"></script>
+```
+
+`window.Promise` は自動的に有効になります。
+
+NPM または Yarn のようなパッケージマネージャーを使用するのを希望する場合は、以下のコマンドでインストールします:
+
+``` bash
+npm install es6-promise --save # NPM
+yarn add es6-promise # Yarn
+```
+
+さらに、Vuex を使用する前に、コードのどこかに次の行を追加します:
+
+``` js
+import 'es6-promise/auto'
+```
+
 ### 開発版ビルド
 
 最新の開発版ビルドを利用したい場合には、 Github から直接クローンし `vuex` を自身でビルドする必要があります。