SyntaxError: 不能在模块外使用 import 语句 -- jspdf

时间:2021-05-17 10:15:57

标签: javascript html syntax-error jspdf

我一直在尝试创建一个使用 jspdf 模块导出 pdf 文件的 html 和 javascript 应用程序。

每次我运行下面的代码时,我都会收到错误未捕获的语法错误:无法在模块外使用导入语句

    <!DOCTYPE html>
    <html>
    <head>
        <title>Test 2</title>
        <script src="https://unpkg.com/jspdf@latest/dist/jspdf.umd.min.js">
            
        </script>
            
        <script type="text/javascript">
            import { jsPDF } from "jspdf";
    
            // Default export is a4 paper, portrait, using millimeters for units
            const doc = new jsPDF();
    
            doc.text("Hello world!", 10, 10);
            doc.save("a4.pdf");
            alert("hello")
        </script>
    
    
    </head>
    <body>
    
    </body>
    </html>

1 个答案:

答案 0 :(得分:1)

请参阅 NPM Package Page 中的“其他模块格式”>“全局变量”。

您不能在 ES6 module 之外使用 import 语句。通常脚本标签的 type 属性设置为 module

<!DOCTYPE html>
    <html>
    <head>
        <title>Test 2</title>
        <script src="https://unpkg.com/jspdf@latest/dist/jspdf.umd.min.js">
            
        </script>
            
        <script type="text/javascript">    
            // Default export is a4 paper, portrait, using millimeters for units
            const { jsPDF } = window.jspdf;
            
            const doc = new jsPDF();
    
            doc.text("Hello world!", 10, 10);
            doc.save("a4.pdf");
            alert("hello")
        </script>
    
    
    </head>
    <body>
    
    </body>
    </html>