Karena html2canvas dan html2canvas.svg digabungkan sebagai UMD, window.html2canvas tidak akan ditentukan dalam aplikasi yang menggunakan pemuat modul.
Akibatnya Anda mendapatkan
"Tidak dapat memperoleh properti 'svg' dari referensi yang tidak ditentukan atau nol"
kesalahan di IE, setiap kali mencoba menggunakan fabric.
Solusi AMD:
require(["html2canvas", "html2canvas.svg"], function(html2canvas, svg) {
window.html2canvas = {
svg: svg
};
Dan jika Anda menggunakan babel/es6:
import html2canvas from 'html2canvas';
window.html2canvas = {
svg: html2canvas.svg
};
Mencoba melakukan ini dan saya mendapatkan gambar kosong..ada ide tentang apa yang menyebabkan ini?
Saya menggunakan versi 0.5.0-beta4. dan melakukan:
html2canvas(captureTarget, {
allowTaint: true
}).then(canvas => {
let imagex64 = canvas.toDataURL(); });
ketika saya menampilkan gambar itu kosong.
Saya memiliki masalah yang sama di MSIE 11.1, tetapi itu tidak terjadi di Chrome.
Varian pada solusi nearwood menghentikan kesalahan, tetapi SVG tidak merender dengan benar:
import * as html2canvas from 'html2canvas';
(window as any).html2canvas = {
svg: html2canvas.svg
};
@niklasvh , mengapa Anda menutup ini? Apakah pikiran itu tetap? Saya tidak melihat komit yang merujuk masalah ini: apakah Anda memiliki tautan ke apa yang memperbaikinya di Chrome, jadi saya dapat melihat mengapa masih rusak di MSIE?
Komentar yang paling membantu
Akibatnya Anda mendapatkan
kesalahan di IE, setiap kali mencoba menggunakan fabric.
Solusi AMD: