2017-03-03 7 views
1

「選択済み」および「選択解除」状態のボタンの配列があります。配列内のボタンが「選択された」状態にあるかどうかをチェックするにはどうすればいいですか?配列内のANY項目が特定の状態にあるかどうかを確認します。coffeescript

だから、基本的に私は(フレーマのCoffeeScriptを使用して)のようなものとします。ここ

for button in buttonArray 
    button.onClick -> 
     this.stateCycle("selected", "default") 

     if any button in buttonArray state.current == "selected" 
      activateMainButton() 
     else 
      deactivateMainButton() 

は私のプロトタイプです:http://share.framerjs.com/11abcrlne5op/(民族セクションに移動します)。

答えて

1

「すべて」とは、そのすべてまたは一部を意味するのかどうかはわかりませんが、someeveryと呼ばれる方法があります。Array.prototype

構文これはJavaScriptであるbuttonArray.some(button => button.state.current == "selected")

で、coffescriptはあなたにもlodashライブラリのバージョンsomeeveryを使用することができます

似た何かを持っている必要があります。

または、カウントするループ内のカウンタを作成するだけです。

+0

私は1がほしいと思いますか?例:配列に10個のボタンがあります。各ボタンをクリックすると、選択した状態と選択しなかった状態のサイクルができます。少なくとも1つのボタンが選択状態にある場合 - > activateMainButton()を実行します(このボタンはボタン配列の一部ではありません)。ここに私のプロトタイプがあります。 http://share.framerjs.com/11abcrlne5op/ – aalok89

+0

また、私のプログラミングの知識はあまり進歩していないので、私を許してください。 – aalok89

+0

'some'メソッドを探しています。あなたが与えた入力関数に対して、少なくとも1つのアイテムがtrueを返すならtrueを返します。 –

関連する問題