2017-10-15 8 views
0

Javascriptで関数に引数を渡そうとしています。ただし、引数の列は、関数の引数ではなくリテラル文字列として解釈されます。私は引数を使用してみましたコロンの前の引数

update(column, selected) { 
      var cols = {...this.props.columns, column: selected} 
      this.props.dispatch(updateColumns({type: "UPDATE_COLUMNS", cols})) 
    } 

[0]の代わりその後私は、引数はstrictモードで予約語で語っています:これは、直接引数を以下の結腸にあります。どのように私は文字列ではなく、引数としてこの値を読むことができる任意のアイデア?現代のJavaScript環境で

+2

'[column]'の代わりに 'column' - これは新しいブラウザでのみ機能します。 – Pointy

答えて

1

、式はプロパティの初期化の左側に評価されるため、オブジェクト初期化子の構文はできます

update(column, selected) { 
     var cols = {...this.props.columns, [column]: selected} 
     this.props.dispatch(updateColumns({type: "UPDATE_COLUMNS", cols})) 
} 

角括弧は、内部の式が評価されるべきであることを意味し、その結果がすべきプロパティ名として使用する。

古い環境では別のステートメントで行う必要がありますが、既に普及構文を使用しているので、私はあなたがそれに心配していないと思います。

関連する問題