mirror of
https://github.com/pyscript/pyscript.git
synced 2026-02-19 16:00:42 -05:00
Added listeners to the constructing kw options (#2044)
This commit is contained in:
committed by
GitHub
parent
d1d1c5740f
commit
c49cb9231b
4
pyscript.core/package-lock.json
generated
4
pyscript.core/package-lock.json
generated
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "@pyscript/core",
|
||||
"version": "0.4.26",
|
||||
"version": "0.4.27",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@pyscript/core",
|
||||
"version": "0.4.26",
|
||||
"version": "0.4.27",
|
||||
"license": "APACHE-2.0",
|
||||
"dependencies": {
|
||||
"@ungap/with-resolvers": "^0.1.0",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@pyscript/core",
|
||||
"version": "0.4.26",
|
||||
"version": "0.4.27",
|
||||
"type": "module",
|
||||
"description": "PyScript",
|
||||
"module": "./index.js",
|
||||
|
||||
@@ -30,21 +30,24 @@ class WebSocket(object):
|
||||
|
||||
def __init__(self, **kw):
|
||||
url = kw["url"]
|
||||
socket = None
|
||||
if protocols in kw:
|
||||
socket = js.WebSocket.new(url, kw[protocols])
|
||||
else:
|
||||
socket = js.WebSocket.new(url)
|
||||
object.__setattr__(self, "_ws", socket)
|
||||
|
||||
for t in ["onclose", "onerror", "onmessage", "onopen"]:
|
||||
if t in kw:
|
||||
socket[t] = kw[t]
|
||||
|
||||
def __getattr__(self, attr):
|
||||
return getattr(self._ws, attr)
|
||||
|
||||
def __setattr__(self, attr, value):
|
||||
if attr == "onmessage":
|
||||
setattr(self._ws, attr, lambda e: value(EventMessage(e)))
|
||||
self._ws[attr] = lambda e: value(EventMessage(e))
|
||||
else:
|
||||
setattr(self._ws, attr, value)
|
||||
self._ws[attr] = value
|
||||
|
||||
def close(self, **kw):
|
||||
if code in kw and reason in kw:
|
||||
|
||||
@@ -22,10 +22,12 @@
|
||||
print(event.type)
|
||||
document.documentElement.classList.add("ok")
|
||||
|
||||
ws = WebSocket(url="ws://localhost:5037/")
|
||||
ws.onopen = onopen
|
||||
ws.onmessage = onmessage
|
||||
ws.onclose = onclose
|
||||
ws = WebSocket(
|
||||
url="ws://localhost:5037/",
|
||||
onopen=onopen,
|
||||
onmessage=onmessage,
|
||||
onclose=onclose
|
||||
)
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user