Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
N
Neos
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
love_飞影
Neos
Commits
df64306d
Commit
df64306d
authored
Aug 14, 2022
by
Chunchi Che
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update JoinHome.tsx
parent
88001a09
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
52 additions
and
14 deletions
+52
-14
src/JoinHome.tsx
src/JoinHome.tsx
+52
-14
No files found.
src/JoinHome.tsx
View file @
df64306d
import
React
,
{
useState
,
useEffect
}
from
"
react
"
;
import
React
,
{
useState
,
useEffect
,
ChangeEvent
,
useRef
}
from
"
react
"
;
import
{
ygopro
}
from
"
./api/ocgcore
"
;
export
default
function
JoinHome
(
props
:
{
addr
:
string
})
{
const
[
isConnected
,
setConnected
]
=
useState
(
false
);
const
[
message
,
setMessage
]
=
useState
(
""
);
const
ws
=
useRef
<
WebSocket
|
null
>
(
null
);
const
[
username
,
setUsername
]
=
useState
(
""
);
const
[
passwd
,
setPasswd
]
=
useState
(
""
);
const
[
isJoined
,
setJoined
]
=
useState
(
false
);
useEffect
(()
=>
{
const
ws
=
new
WebSocket
(
props
.
addr
);
ws
.
current
=
new
WebSocket
(
props
.
addr
);
ws
.
onopen
=
()
=>
{
ws
.
current
.
onopen
=
()
=>
{
console
.
log
(
"
websocket open
"
);
setConnected
(
true
);
};
ws
.
onclose
=
()
=>
{
ws
.
current
.
onclose
=
()
=>
{
console
.
log
(
"
websocket closed
"
);
setConnected
(
false
);
};
ws
.
onmessage
=
(
e
)
=>
{
const
msg
=
e
.
data
;
setMessage
(
msg
);
ws
.
current
.
onmessage
=
(
e
)
=>
{
console
.
log
(
"
websocket read message:
"
+
e
.
data
);
};
return
()
=>
ws
.
close
();
const
wsCurrent
=
ws
.
current
;
return
()
=>
wsCurrent
.
close
();
},
[]);
let
handleUsernameChange
=
(
event
:
ChangeEvent
<
HTMLInputElement
>
)
=>
{
setUsername
(
event
.
target
.
value
);
};
let
handlePasswdChange
=
(
event
:
ChangeEvent
<
HTMLInputElement
>
)
=>
{
setPasswd
(
event
.
target
.
value
);
};
let
handleButtonOnClick
=
()
=>
{
console
.
log
(
"
buttom clicked
"
);
if
(
!
ws
.
current
)
{
console
.
error
(
"
websocket not connected
"
);
}
else
{
const
wsCurrent
=
ws
.
current
;
// todo
}
};
return
(
<
div
>
<
p
>
{
"
isConnected:
"
+
isConnected
}
</
p
>
<
p
>
{
"
message:
"
+
message
}
</
p
>
<
p
>
<
input
type=
"text"
title=
"username"
value=
{
username
}
onChange=
{
handleUsernameChange
}
></
input
>
</
p
>
<
p
>
<
input
type=
"text"
title=
"passwd"
value=
{
passwd
}
onChange=
{
handlePasswdChange
}
></
input
>
</
p
>
<
button
onClick=
{
handleButtonOnClick
}
>
Join
</
button
>
<
p
>
{
"
isJoined:
"
+
isJoined
}
</
p
>
</
div
>
);
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment