正如您在
github page of the jshue lib
,
bridge.createUser
做
不
直接返回a
user
对象
相反,示例代码设置
使用者
变量
在…内
这个
then
返回的函数
promise
:
bridge.createUser('myApp#testdevice').then(data => {
// extract bridge-generated username from returned data
var username = data[0].success.username;
// instantiate user object with username
var user = bridge.user(username);
user.setLightState( .... )
});
可以预期,使用这种方法
使用者
变量将正确设置,并且
user.setLightState
将定义。
一个独立的示例:
拿
this Codepen
例如:
url = "https://api.ipify.org?format=json"
outside = axios.get(url).then (response) =>
inside = response.data.ip
console.log "inside: #{inside}"
inside
console.log "outside: #{outside}"
控制台输出为
outside: [object Promise]
inside: 178.19.212.102
您可以看到:
-
这个
outside
日志是
第一
是一个
Promise
对象
-
这个
inside
日志来了
最后的
并包含来自Ajax调用的实际对象(在本例中是您的IP)
-
这个
然后
函数隐式返回
在…内
不会改变任何事情