使用Browserify加载海盗湾npm模块客户端



我有一个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"

有可能浏览盗版软件吗?如果有,为什么它不能识别我的html代码中的tpb.search...etc

在您的服务器端代码中放入tpb.search,并在浏览之前将其附加到按钮的onclick事件。

Browserify通过使用闭包来创建作用域。tbp库及其搜索功能无法从全局范围访问,而全局范围正是客户端代码试图调用它的地方。

最新更新