我正在使用来自npmjs的apiai包进行聊天机器人。
我有一个名为'brain.js'的javascript文件,我已经浏览了这个文件,以便html浏览器可以知道require关键字是什么。但我面临的问题是,当我想用dom元素绑定该函数(在js文件中)时,例如使用onclick()函数,我的函数似乎没有被正确引用。但是当我没有将它与onclick事件绑定时,一切似乎都运行正常。 我很乐意收到社区的一些建议,告诉我如何让我的聊天机器人从html工作。
这就是brain.js的样子:
function fun(){
var c;
var apiai=require('apiai');
const getJSON = require('simple-get-json');
var app = apiai("3dd3ae56a8094061a8fe8745dcad45a0");
var options = {
sessionId: 'UNIQE SESSION ID'
};
var request = app.textRequest("book me a good hotel",options);
request.on('response', function(response) {
if(response.result.action.match('hotel.book')){
var url='http://api.openweathermap.org/data/2.5/weather?q=';
var location='delhi';
var end='&APPID=761ddf2847a0e1dc0ff709d8e9745d72';
getJSON((url+location+end),function(data){
// console.log('the temperature in '+location+' is : '+data.main.temp);
document.addEventListener("onload",function(){document.getElementById('text').innerHTML= 'data.main.temp';})
});
}
});
request.on('error', function(error) {
// document.getElementById('demo').innerHTML='shit it is error!!!';
});
request.end();
return c;
}
我没有附加浏览器化的代码段,以避免此页面出现的笨拙外观。
这是我要运行的html文件:
<!DOCTYPE html>
<html>
<head >This is starting.
<script src='bundles.js'>
</script>
</head>
<body>
<h1 id='text' >Click on this text!</h1>
<h1 id='test'>Hello here</h1>
</body>
</html>
如果仍然不清楚,请告诉我。 我一直试图找到一个替代品。所以任何建议或干净的方式来做到这一点将不胜感激。 提前谢谢。