Javascript 将值发送/写入websocket服务器React本机应用程序
我正在开发一个用于控制灯光等的应用程序。我已经在一个React本机应用程序中实现了Websocket,该应用程序可以正常工作(测试我是否连接到我的Websocket服务器,Javascript 将值发送/写入websocket服务器React本机应用程序,javascript,reactjs,react-native,websocket,Javascript,Reactjs,React Native,Websocket,我正在开发一个用于控制灯光等的应用程序。我已经在一个React本机应用程序中实现了Websocket,该应用程序可以正常工作(测试我是否连接到我的Websocket服务器,localbus.lp)。 我想添加一个按钮来控制一些灯光,我已经用HTML测试过了,效果很好。但是我如何在React Native应用程序中执行相同的操作 HTML示例: <!DOCTYPE html> <html> <head> <meta charset="UTF-
localbus.lp
)。
我想添加一个按钮
来控制一些灯光,我已经用HTML测试过了,效果很好。但是我如何在React Native
应用程序中执行相同的操作
HTML示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<script src="http://192.168.10.11/apps/js/jquery.js.gz"></script>
<script src="http://192.168.10.11/apps/js/localbus.js.gz"></script>
<script src="http://192.168.10.11/scada/vis/busdecode.js.gz"></script>
</head>
<body>
<div class="container">
<div>
<input type = "text" id= "input-get" placeholder = "Get Value">
</div>
<div>
<input type = "text" id = "input-set" placeholder = "Set Value">
</div>
</div>
<button onclick="toggle()">KONTOR</button>
<script>
localbus.init('http://192.168.10.11', 'admin:password');
var toggled = false;
function toggle(){
if(!toggled){
toggled = true;
localbus.write('1/0/4', true);
buttontext = PÅ
return;
}
if (toggled) {
toggled = false;
localbus.write('1/0/4', false);
return;
}
}
</script>
<script>
localbus官方不支持React Native,在开源中不存在任何npm包。
React Native支持WebSocket,因此您可以尝试使用
this.ws.send()
和this.ws.onmessage方法来实现localbus的手动工作。好的,我不知道。但是你能在我的代码中告诉我如何手动操作吗?如果可能的话。你能提供localbus文档的链接吗?还是源代码的链接?
export default class App extends Component{
render(){
return(
<View style={{flex: 1}}>
<WS
ref = {ref => {this.ws = ref}}
url = "ws://admin:password@192.168.10.11/apps/localbus.lp"
onOpen = {() =>{
console.log('Open')
this.ws.send('Hello')
}}
onMessage={console.log}
onError={console.log}
onClose={console.log}
reconnect
/>
<Button>
</Button>
</View>
)
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#fff',
alignItems: 'center',
justifyContent: 'center',
},
});