Rumah >hujung hadapan web >tutorial js >Mengapa Fungsi Anak Panah d3.js Saya Gagal dalam IE11?
Ralat Sintaks Fungsi Anak Panah dalam IE 11
Menggunakan d3.js untuk visualisasi, sekeping kod menghadapi ralat sintaks apabila dilaksanakan dalam IE 11. Ralat berlaku secara khusus dalam fungsi anak panah yang digunakan untuk menentukan atribut.
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"));
Isunya
Penyebab ralat ialah penggunaan fungsi anak panah d => {}, yang tidak disokong dalam IE 11. Fungsi anak panah ialah sintaks JavaScript moden yang diperkenalkan dalam ES6, manakala IE 11 hanya menyokong sehingga ES5.
Penyelesaian
Untuk menyelesaikan isu, gantikan fungsi anak panah dengan sintaks fungsi tradisional, yang difahami oleh IE 11.
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"; });
Pertimbangan Tambahan
Walaupun sintaks fungsi tradisional disokong dalam IE 11, secara amnya disyorkan untuk menggunakan ciri JavaScript moden apabila boleh, seperti yang ditawarkan kod yang lebih bersih dan cekap. Walau bagaimanapun, untuk keserasian dengan pelayar lama seperti IE 11, anda perlu menggunakan sintaks ES5 dalam kes ini.
Atas ialah kandungan terperinci Mengapa Fungsi Anak Panah d3.js Saya Gagal dalam IE11?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!