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
3a3e233a
Commit
3a3e233a
authored
Aug 09, 2023
by
timel
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: eventbus
parent
c81ab240
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
19 additions
and
13 deletions
+19
-13
src/infra/eventbus.ts
src/infra/eventbus.ts
+4
-0
src/service/mora/selectHand.ts
src/service/mora/selectHand.ts
+2
-2
src/service/mora/selectTp.ts
src/service/mora/selectTp.ts
+2
-2
src/ui/WaitRoom/Popover.tsx
src/ui/WaitRoom/Popover.tsx
+11
-9
No files found.
src/infra/eventbus.ts
View file @
3a3e233a
...
@@ -44,4 +44,8 @@ const call = (task: Task, ...args: any[]) =>
...
@@ -44,4 +44,8 @@ const call = (task: Task, ...args: any[]) =>
export
const
eventbus
=
{
export
const
eventbus
=
{
call
,
call
,
register
,
register
,
on
:
eventEmitter
.
on
.
bind
(
eventEmitter
),
off
:
eventEmitter
.
off
.
bind
(
eventEmitter
),
once
:
eventEmitter
.
once
.
bind
(
eventEmitter
),
emit
:
eventEmitter
.
emit
.
bind
(
eventEmitter
),
};
};
src/service/mora/selectHand.ts
View file @
3a3e233a
...
@@ -2,7 +2,7 @@ import { ygopro } from "@/api";
...
@@ -2,7 +2,7 @@ import { ygopro } from "@/api";
import
{
eventbus
,
Task
}
from
"
@/infra
"
;
import
{
eventbus
,
Task
}
from
"
@/infra
"
;
import
{
RoomStage
,
roomStore
}
from
"
@/stores
"
;
import
{
RoomStage
,
roomStore
}
from
"
@/stores
"
;
export
default
async
function
handleSelectHand
(
_
:
ygopro
.
YgoStocMsg
)
{
export
default
function
handleSelectHand
(
_
:
ygopro
.
YgoStocMsg
)
{
roomStore
.
stage
=
RoomStage
.
HAND_SELECTING
;
roomStore
.
stage
=
RoomStage
.
HAND_SELECTING
;
await
eventbus
.
call
(
Task
.
Mora
);
eventbus
.
emit
(
Task
.
Mora
);
}
}
src/service/mora/selectTp.ts
View file @
3a3e233a
...
@@ -2,7 +2,7 @@ import { ygopro } from "@/api";
...
@@ -2,7 +2,7 @@ import { ygopro } from "@/api";
import
{
eventbus
,
Task
}
from
"
@/infra
"
;
import
{
eventbus
,
Task
}
from
"
@/infra
"
;
import
{
RoomStage
,
roomStore
}
from
"
@/stores
"
;
import
{
RoomStage
,
roomStore
}
from
"
@/stores
"
;
export
default
async
function
handleSelectTp
(
_
:
ygopro
.
YgoStocMsg
)
{
export
default
function
handleSelectTp
(
_
:
ygopro
.
YgoStocMsg
)
{
roomStore
.
stage
=
RoomStage
.
TP_SELECTING
;
roomStore
.
stage
=
RoomStage
.
TP_SELECTING
;
await
eventbus
.
call
(
Task
.
Tp
);
eventbus
.
emit
(
Task
.
Tp
);
}
}
src/ui/WaitRoom/Popover.tsx
View file @
3a3e233a
import
{
Button
,
Popover
,
Space
}
from
"
antd
"
;
import
{
Button
,
Popover
,
Space
}
from
"
antd
"
;
import
{
useState
}
from
"
react
"
;
import
{
use
Effect
,
use
State
}
from
"
react
"
;
import
{
eventbus
,
Task
}
from
"
@/infra
"
;
import
{
eventbus
,
Task
}
from
"
@/infra
"
;
...
@@ -22,10 +22,11 @@ export const MoraPopover: React.FC<
...
@@ -22,10 +22,11 @@ export const MoraPopover: React.FC<
const
[
open
,
setOpen
]
=
useState
(
false
);
const
[
open
,
setOpen
]
=
useState
(
false
);
// 需要在mora的service之中,emit一个事件,让这个组件监听到,然后打开popover
// 需要在mora的service之中,emit一个事件,让这个组件监听到,然后打开popover
eventbus
.
register
(
Task
.
Mora
,
async
()
=>
{
useEffect
(()
=>
{
setOpen
(
true
);
eventbus
.
once
(
Task
.
Mora
,
()
=>
{
return
true
;
setOpen
(
true
);
});
});
},
[]);
const
onClick
=
(
result
:
Mora
)
=>
{
const
onClick
=
(
result
:
Mora
)
=>
{
result
;
// 这里send猜拳的结果给服务器
result
;
// 这里send猜拳的结果给服务器
...
@@ -71,10 +72,11 @@ export const TpPopover: React.FC<
...
@@ -71,10 +72,11 @@ export const TpPopover: React.FC<
const
[
open
,
setOpen
]
=
useState
(
false
);
const
[
open
,
setOpen
]
=
useState
(
false
);
// 需要在mora的service之中,emit一个事件,让这个组件监听到,然后打开popover
// 需要在mora的service之中,emit一个事件,让这个组件监听到,然后打开popover
eventbus
.
register
(
Task
.
Tp
,
async
()
=>
{
useEffect
(()
=>
{
setOpen
(
true
);
eventbus
.
once
(
Task
.
Tp
,
()
=>
{
return
true
;
setOpen
(
true
);
});
});
},
[]);
const
onClick
=
(
result
:
Tp
)
=>
{
const
onClick
=
(
result
:
Tp
)
=>
{
result
;
// 这里send结果给服务器
result
;
// 这里send结果给服务器
...
...
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