gpt4 book ai didi

javascript - 如何在浏览器中使用require

转载 作者:行者123 更新时间:2023-11-30 12:54:27 29 4
gpt4 key购买 nike

我正在尝试使用 RequireJS 在浏览器中使用 require() 函数。对于上下文,我正在尝试使用 Lob API 的节点包装器:https://github.com/hisankaran/lob-node .

相关代码如下:

define (function (require) {
var LOB = require('lob');
LOB = new LOB(API_KEY);
})
// var LOB = new (require('lob')) (API_KEY);
console.log('Success?')

它运行成功,但是当我尝试实际调用任何东西时,例如 LOB.bankaccounts.create,它说 LOB 未定义。

Lob 文档建议我这样做:

var LOB = new (require('lob')) (LOB_API_KEY);

但我一直了解到模块尚未加载,因为此处描述的上下文错误 (http://requirejs.org/docs/errors.html#notloaded),所以我尝试了 RequireJS 网站上的上述语法。

我对 RequireJS(以及一般的编码)非常陌生,所以我可能只是在做一些愚蠢的事情。

最佳答案

define() 函数必须实际返回它定义的对象。

此外,在浏览器中,require() 应该异步使用,因为同步调用仅在模块已经加载时才有效。

话虽如此,我将按如下方式重组您的代码:

define( ['lob'], function( LOB ){
return new LOB( API_KEY );
});

把它放在一些模块定义中并将它加载到你的主模块中,例如,像这样

require( [ 'myLob' ], function( myLob ){
// do something with myLob
});

关于javascript - 如何在浏览器中使用require,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19743632/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com