2016-11-15 4 views
0

hier zu vereinfachen ist der Code:Wie bedingter Array-Wert zusätzlich

const presets = (buildType === "___PROD___") ? 
         [ "react", 
          "es2015", 
          { "modules" : false } 
         ] : [ 
          "react", 
          "es2015" 
         ]; 

Da die Werte von react zu sehen sein kann, es2015 wiederholt werden. Ist es möglich, diese Wiederholung im ternären Operator nicht zu haben?

Best,

Antwort

2

Wie wäre es die spread syntax mit?

var standardPresets = ['react','es2015']; 
const presets = cond ? [ ...standardPresets , {modules: false} ] : [ ...standardPresets ]; 

Hat man ein ternäres if verwenden? Könnten Sie einfach .push in das Array, wenn diese Bedingung erfüllt ist?

const standardPresets = ['react','es2015']; 
if(cond){ standardPresets.push({modules: false}); } 

Persönlich glaube ich nicht, dass die Wiederholung zu schrecklich ist, wie es ist.

+1

Bier Uhr ist es :) np. Ich mag deine Antwort, dachte selbst an ähnliche Lösungen. – Mihailo

+0

Danke, ich mag die Verwendung von Spread-Syntax. – Kayote