“Funzione freccia” non funziona in IE, perché?

sotto la parte di codice non funziona in IE 11 getta un errore di syntax nella console

g.selectAll(".mainBars").append("text").attr("x",d=>(d.part=="primary"? -40: 40)).attr("y",d=>+6).text(d=>d.key).attr("text-anchor",d=>(d.part=="primary"? "end": "start")); 

Utilizzo del grafico bipartito d3.js per la visualizzazione

questo codice causa il problema nella precedente dichiarazione d=>(d.part=="primary"? -40: 40)

Stai usando le funzioni freccia. IE11 non li supporta. Usa invece le funzioni.

Ecco la traduzione di Babel di quello per ES5:

 g.selectAll(".mainBars").append("text").attr("x", function (d) { return d.part == "primary" ? -40 : 40; }).attr("y", function (d) { return +6; }).text(function (d) { return d.key; }).attr("text-anchor", function (d) { return d.part == "primary" ? "end" : "start"; }); 

Evitare l’uso di funzioni di freccia se è necessario supportare IE 11 in quanto non è supportato

Passa a funzioni regolari e il tuo codice dovrebbe funzionare come previsto

 g.selectAll(".mainBars").append("text").attr("x",function(d) { return d.part=="primary"? -40: 40; }).attr("y",function(d){ return +6; }).text(function(d) { return d.key; }).attr("text-anchor", function(d) { return d.part=="primary"? "end": "start"; });