Browserify无法使用功能?

时间:2017-01-07 05:21:40

标签: javascript html node.js browserify

您好我有浏览器问题,我做了browserify main.js > bundle.js一切正常,直到它达到功能。现在我得到了:

Uncaught TypeError: search is not a function
at HTMLButtonElement.onclick (index.html:30)

以下是我的main.js上的内容:

function search() {
[..] trigger stuff
}

在我的html文件中,我有:

<input type="text" id="search" placeholder="Search">
<button class="ui button" onclick="search()">

其他只是设计和标题。

1 个答案:

答案 0 :(得分:6)

如果要从包外部导出要调用的函数(例如在onclick处理程序中),最简单的事情就是这样:

function search() {
  ...
}
window.search = search;

基于window的简单解决方案的替代方案是--standalone option。在main.js中,您可以执行以下操作:

function search() {
  ...
}
exports.search = search;

你可以用这样的命令构建包:

browserify main.js --standalone MyApp > bundle.js

您的onclick处理程序将是:

<input type="text" id="search" placeholder="Search">
<button class="ui button" onclick="MyApp.search()">