-1
これは、コードの壊れた部分である:他の関数から呼び出さJavascript:スイッチケースを他の機能で選択できるようにする方法はありますか?
addSkillButton(stonewall);
私object
引数が正常に動作します。 switch文に行き、正しい大文字小文字を選択してコードを実行します。しかし、私が持っている問題は、addSkillButton()
の機能です。私は手動でオブジェクトを入力することができ、正常に動作しますが、私のスキルシステムは動的です。ケース番号に基づいてオブジェクト名を取得する必要があります。
あなたは以下のコードを見れば、あなたはスキルdeepcut
& stonewall
の両方に気付くでしょうが、これらは、ユーザーがアップグレードするtrysとして、サブメニューにポップアップするスキルです位置1にあります。これは開かれても問題ありませんが、スキルを選択して追加するのは面倒です.JavaScriptにどのようなケース番号が選択されたかを伝えることができないので、位置1のオブジェクト名を選択してください。
これは私が欲しいものです言うか、行うには:
function radialSelector(object){ switch (object){ case strike: radialSubMenuSkills("position1", deepcut); radialSubMenuSkills("position2", balancedstrike); radialSubMenuSkills("position3", fury); break; case defend: radialSubMenuSkills("position1", stonewall); radialSubMenuSkills("position2", digin); radialSubMenuSkills("position3", holdtheline); break; default: console.log("radialSelector() has set its switch statement to default") } $('#upgradeSkillsBar').on('click', '#position1', function(){ removeSkillButton(object); addSkillButton(stonewall); removeRadialSubMenu(); }); }
質問が合理的な論理的順序になるように手配してください。 "*これは壊れた部分です" *は**の話ではなく**です。 – Amit
あなたは、配列やオブジェクトやマップの配列を使うほうがよいでしょう。スイッチは、if、else、whileなどの条件付きです。 – zer00ne