You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

解决在标准JS文件中使用npm安装的zebra-browser-print-wrapper包的报错问题

解决exports is not defined报错的方法

你遇到的问题根源是:你引入的CDN版本是CommonJS模块格式——这是给Node.js用的模块规范,浏览器原生不认识exports这种Node.js专属的语法,所以加载就报错了。

下面给你两种简单的解决办法:

方法1:用你已经npm安装好的本地文件(推荐,适合新手)

既然已经执行npm i zebra-browser-print-wrapper装了包,就别用CDN了,直接用包里兼容浏览器的版本:

  1. 打开项目里的node_modules/zebra-browser-print-wrapper/lib文件夹,找带umd字样的文件(比如index.umd.js或者index.umd.min.js),UMD格式是同时兼容浏览器和Node.js的
  2. 把这个文件复制到你项目的静态资源目录(比如自己建的js/libs文件夹)
  3. 在HTML里引入这个本地文件:
    <script src="./js/libs/index.umd.min.js"></script>
    
  4. 之后就能在你的JS代码里用全局变量调用这个包的API了(具体变量名看包的文档,一般是ZebraBrowserPrintWrapper这类)

方法2:换CDN的UMD版本

如果不想复制文件,去CDN上找该包的UMD格式版本:

  • 检查CDN的文件目录,比如查看https://cdn.jsdelivr.net/npm/zebra-browser-print-wrapper@0.1.4/lib/下的文件,看看有没有umd子目录或者带umd后缀的压缩文件
  • 把原来的CDN链接换成这个UMD版本的地址,浏览器就能正常解析了

新手小提示

搞不清模块格式的话,记住这两点:

  • 带exports/require的是CommonJS,只能在Node.js里用
  • 带umd/iife的是浏览器友好格式,直接在HTML里引就行
  • 现代浏览器也支持ES模块(import/export),但需要给script标签加type="module"

内容的提问来源于stack exchange,提问作者Source Matters

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 14:47:35