导出功能的问题
Problems to export function
我正在尝试在附加组件上使用斯坦福Javascript Crypto Lib,但是当我将其代码粘贴到模块上时遇到问题。
我在这里做了一个测试项目:
https://builder.addons.mozilla.org/package/209559/latest/
main 函数调用 teste.js 中描述的函数。
如果我只在teste上留下这段代码.js
exports.generateKey = generateKey;
/***
* Function test (I know that I could not to generate a constant key)
***********************************************/
function generateKey(){
return 123455;
}
main 函数(在 main.js 上)找到函数 generateKey 并在控制台中显示123455的数字。
但是当我添加斯坦福图书馆的代码时,它停止工作,我收到以下错误
类型错误:t.generateKey 不是函数
有人可以帮助我吗?
谢谢。
加密库会用自己的导出覆盖您的导出:
if(typeof module != 'undefined' && module.exports){
module.exports = sjcl;
}
我还找不到在哪里或是否记录了它,但是在每个SDK模块中都有一个module
对象,其中一个属性是module.exports
,它以exports
的别名开头。
因此,未修改的加密库已经是可加载的,并且完全覆盖了您之前添加到exports
。
我建议不要接触加密库源代码并按原样使用它(例如,sjcl.js
命名库并像require("./sjcl").encrypt(...)
一样使用它)并定义您的包装器函数,例如 generateKey
,在main.js
或全新的模块中。
相关文章:
- 较大引导转盘中的较小引导转盘-较小引导转盘上的旋转功能问题
- jQuery Div滚动功能:IE中的问题
- 用户使用浏览器时SPA中的问题's的后退或刷新功能
- 图像上传功能将++(+1)副本添加到下一次上传.出了什么问题或如何重置“选定图像”
- 使用具有同步和启动功能的弹性滑块时出现问题
- 剑道UI移动版 - 按钮点击时调用功能时出现问题
- 从根本上说,函数调用出了问题.功能在控制台中确实有效
- 下拉菜单的jQuery切换功能出现问题
- 功能范围外的图像参考问题
- 引导工具提示/popover功能问题
- jQuery:窗口大小调整功能问题
- ExtJs 4.1网格's分组功能启用和禁用问题
- 将 SVG 转换为图像时画布到 URL 功能出现问题
- 创建可在任何地方使用的 JS 函数?范围和功能“未定义”的问题
- 设置超时功能在 chrome 扩展程序弹出窗口.js问题
- j查询验证器功能覆盖问题
- JSTREE - 重命名功能问题(单击重命名后,节点上的文本输入不接受更改)
- 关于工厂功能概念的问题
- 导出功能的问题
- 我在循环中遇到闭包问题,但我仍然使用单独的功能