繁体   English   中英

从webapp中的按钮访问外部js文件中的function

[英]Access function in external js file from button in webapp

我的 /js 文件夹中有一个文件 dmreboot_service.js。 当我使用节点 /js/dmreboot_service.js 运行此文件时,它成功调用了 Azure 中的直接方法。

我需要能够从我的 web 应用程序单击按钮执行此 function 或文件。

我尝试使用以下方法将脚本加载到 html 的头部:

<script src="js/dmreboot_service.js"></script>

我在外部文件中放了一个警报。 如果我把这个警报放在文件的顶部它可以工作,但在底部它会失败,所以文件的内容没有加载。

dmreboot_service.js 的内容是:

 'use strict'; var Registry = require('azure-iothub').Registry; var Client = require('azure-iothub').Client; var connectionString ="HostName=XxxxxxxX.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey=XxxxxxxxxxxxxxxxxxxxxxxxxxxxxxX="; var registry = Registry.fromConnectionString(connectionString); var client = Client.fromConnectionString(connectionString); var deviceToReboot = 'Runner'; var startRebootDevice = function (twin) { var methodName = "reboot"; var methodParams = { methodName: methodName, payload: null, timeoutInSeconds: 30 }; client.invokeDeviceMethod(deviceToReboot, methodParams, function(err, result) { if (err) { console.error("Direct method error: "+err.message); } else { console.log("Successfully invoked the device to reboot."); } }); }; var queryTwinLastReboot = function() { registry.getTwin(deviceToReboot, function(err, twin){ if (twin.properties.reported.iothubDM.= null) { if (err) { console:error('Could not query twins. ' + err.varructor:name + '. ' + err;message). } else { var lastRebootTime = twin.properties.reported.iothubDM.reboot;lastReboot. console:log('Last reboot time. ' + JSON,stringify(lastRebootTime, null; 2)). } } else console.log('Waiting for device to report last reboot time;'); }); }; startRebootDevice(), setInterval(queryTwinLastReboot; 2000); alert('dmreboot included!');

我还尝试在我的 html 的头部创建一个 function ,其中包含 dmreboot_service.js 的全部内容,但是虽然 ZC1C425268E68385D1AB5074C17A94F14 被成功调用,但代码没有执行。

这是我需要开始工作的项目的最后一部分。 我对此很陌生,这让我发疯了。! 非常感谢任何建议。

我通常使用 javascript 来处理 HTML 中的点击;

const doSomething = document.querySelector('.whateverclassnameyouchoose').addEventListener('click',onClick);

function onClick(e){
what ever you want the function to do
}

希望能帮助到你:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM