node.js - 将 browserify 与 node 模块一起使用时出现问题
问题描述
我想将 pbkdf2 npm 库包含到我的 JS/html 页面中,这些页面只是普通的 Javascript,节点不可用。
browserify 应该让我在那里。我编写了一个使用该功能的简短 JS 文件(main.js)。
var callback = function (err, key) {
console.log(key);
}
function hashIt(hac, callback) {
pbkdf2.pbkdf2(hac, hac, 10000, 32, 'sha256', callback);
}
我使用 browserify 把它变成一个“包含”的 JS 文件
browserify main.js -o bundle.js
bundle.js 文件看起来不错,就像 browserify 发挥了它的魔力一样。
我在我的 HTML 页面中包含了 bundle.js 文件,但是我无法访问 hashIt 函数。是否有一种特殊的方法来包含或调用 bundle.js 中的函数?
解决方案
将您的函数导出到window
对象上。
var callback = function (err, key) {
console.log(key);
}
function hashIt(hac, callback) {
pbkdf2.pbkdf2(hac, hac, 10000, 32, 'sha256', callback);
}
window.hashIt = hashIt;
在浏览器中。
hashIt('test', (err, key) => console.log(key.toString()))
> ��&�`=�&
0q$.��bp�u��<!x���GV�;
来自 Chrome 的屏幕截图。
推荐阅读
- javascript - 在特定点的线上绘制箭头
- javascript - 如何让我的 let 产品的最终结果乘以 100
- python - 基于 OR 条件创建变量/列
- python - 代码给了我一个列表中的数字而不是模式
- php - Laravel - 即使 PHP 版本是必需的,也无法安装包
- javascript - 应用程序关闭时在后台运行服务/任务 - React Native
- javascript - React - 使用用户输入进行 API 调用的正确方法是什么?
- asp.net - .Net 核心路由 URLEncoded URL 不起作用
- javascript - 如何为点击的图像获取 img src
- javascript - 多次显示同一组件时共享会话