我有一个node.js服务器文件加载我的网站并运行javascript没有任何问题。
我已将tpb = require('thepiratebay');
添加到我的server.js文件中,它可以在服务器文件中使用以下示例正常工作:
tpb.search('Game of Thrones', {
category: '205'
}).then(function(results){
console.log(results);
}).catch(function(err){
console.log(err);
});
我尝试在html页面中使用相同的代码。在控制台我得到了:
"Uncaught ReferenceError: require is not defined"
因此,我尝试使用browserify
捆绑一个简单文件来使用var tpb = require('thepiratebay');
模块。
然后我在我的html文件中调用了bundle.js文件。
<script type="text/javascript" src="bundle.js"></script>
但是当我尝试使用示例代码tpb.search('Game of Throne...etc
时,我得到了
"Uncaught ReferenceError: tpb is not defined"
是否可以对thepiratebay进行浏览,如果是,为什么不在我的html代码中识别tpb.search...etc
?
答案 0 :(得分:1)
如何将tpb.search放在服务器端代码中,并在浏览之前将其附加到按钮的onclick事件上。
Browserify通过使用闭包来创建范围。 tbp库及其搜索功能无法从全局范围访问,这是您的客户端代码试图调用它的地方。