我正在尝试使用this库来构建应用程序。更具体地说,我想在指定的间隔时间内调用特定的函数。为此,我使用以下代码:
vm.startExperimentLoop = function() {
vm.myCall = $interval( loop, 5000);
};
vm.apiStop = function(){
$interval.cancel(vm.myCall);
}
function loop(){
getTemp();
}
function getTemp(){
return bleReadgetTemp()
.then (function(response){
response = atob(response.value);
debugWrite("Response@getTemp: " + response + "\n");
return response;
})
.catch( function(error){
console.log("getTemp error");
})
}
function bleReadgetTemp(){
var service_id = '12ab';
var characteristic_id = '31cd';
var params = {
address: $stateParams.address,
service: service_id,
characteristic: characteristic_id,
};
return $cordovaBluetoothLE.read(params);
}
蓝牙外围设备正在运行带有bleno库的nodeJS,并且在此特定的读取请求上返回类似{"temp": 2455555555}
的对象。只要temp
属性的值不超过10位,一切都会按预期进行。如果再加一位数字,使它们总共变为11,则$interval
函数似乎不起作用,并不断向外围设备发送读取请求。
知道为什么会发生这种情况吗?