javascript - 通过 webpack 导入 Javascript 的 QRCode 构造函数
问题描述
我想使用这个 repo 中的 QRCode 生成器:https ://github.com/davidshimjs/qrcodejs
如何通过 webpack 导入二维码?当我通过 npm 安装 qrcodejs 时,index.js 包含此代码module.exports = 'qrcodejs';
当我require('qrcodejs');
在代码中使用它时,它返回字符串“qrcodejs”,但我想通过 webpack 导入 QRCode 构造函数。在使用 webpack 导入它之后,我希望能够像这样在我的代码中调用构造函数。
let qrcode = new QRCode("output", {
text: "http://google.com",
width: 100,
height: 100,
colorDark: "#188710",
colorLight: "#ffffff"
});
我该怎么做才能做到这一点?除了 webpack,我正在使用 ES6 Javascript,没有任何框架或其他库。
更新
qrcodejs 文件夹中的 index.js
module.exports = {
module: {
rules: [
{ test: /qrcode/, loader: 'exports-loader?QRCode' }
]
}
}
我的项目.js
import { QRCode } from 'qrcodejs'
export class EditProduct {
openProduct(){
let test = require('qrcodejs'); // returns the module object with the rules array
let test2 = QRCode // returns undefined
}
}
解决方案
正如 Raz Ronen 所说,安装export-loader。
这将允许我们将非模块化 js 引入 Webpack。
安装后添加 QRCode 模块为:
import QRCode from 'exports-loader?QRCode!qrcodejs/qrcode'
根据这里的答案
推荐阅读
- vue.js - Quasar Framework 如何存储登录哈希,以便它在 Web 和移动(使用 cordova)应用程序上工作
- javascript - 如何捕获失败的 WebSocket 消息?
- android - ARCore 记录/回放系统
- c++ - 明确论证?
- html - fontawesome有问题,它没有出现
- javascript - 在 ASP.NET Razor 视图中对大量对象进行分页
- symfony - Symfony 5 pb 与存储库
- javascript - 数组和 JSON 之间是否存在混合数据结构?
- python - 如何在 Tkinter 画布上隐藏图像?
- javascript - 我如何验证而不需要刷新页面?