文档
文档
idepy 40 2281字 约4分钟

JS-API

IDEPY框架预定义了一JS-API拓展功能,可通过以下方式导入并使用。

python调用相关方法


from idepy_next import WindowAPI

# 主窗口通讯API
class MainWindow(WindowAPI)
    def test(self):
        print(self.web_data)

                # 获取当前窗口对象
                super()._window()

JavaScript调用相关方法

// html内相关事件也可以通过该方法调用。
api.iglobal_window_close()

// 通过pywebview自身对象调用
pywebview.api.iglobal_window_close()

html调用相关方法


// 直接通过api、idepy调用
<a class="text-primary "  onclick="api.check_verity()">刷新信息</a>

// vue调用
<a class="text-primary "  @click="api.check_verity()">刷新信息</a>

API

预定义了一批功能函数,并将部分内容暴漏给网页,JS可通过api.xxx或idepy.api.xxx调用相关方法,python可以在MainWindow类内部或窗口js_api对象进行调用。
使用_前缀预定义的函数,仅支持python自身调用。

get_config_data

获取配置数据

update_config

更新程序配置数据,并返回更新后的数据

get_data

获取页面数据

set_data

设置页面数据

update_web_data

更新页面数据,js、python都可以通过调用该函数更新数据。
key: 需要更新的数据项
value: 需要更新的数据值
refresh: 立即同步数据到JavaScript,默认为True

iglobal_proxy_request_get

用python代理请求特定内容,并将结果返回给JS
url: 请求的链接
params: 请求的参数
headers: 请求头
cookies: 使用的cookie
timeout: 超时时间,默认为60s
return {"status": 请求状态码, "data": 数据}

iglobal_proxy_request_post

用python代理请求特定内容,并将结果返回给JS
url: 请求的链接
request_data: 请求的数据
headers: 请求头
cookies: 使用的cookie
timeout: 超时时间,默认为60s
return {"status": 请求状态码, "data": 数据}

iglobal_proxy_request_json

用python代理请求特定内容,使用JSON数据格式请求,并将结果返回给JS
url: 请求的链接
request_data: 请求的数据
headers: 请求头
cookies: 使用的cookie
timeout: 超时时间,默认为60s
return {"status": 请求状态码, "data": 数据}

iglobal_window_close

关闭当前窗口对象

iglobal_window_minimize

最小化当前窗口

iglobal_window_maximize

最大化当前窗口

iglobal_window_hide

隐藏当前窗口

iglobal_window_show

显示当前窗口

iglobal_clear_cookies

清理cookie

提示

后面的方法只能由python调用

_refresh_config_data

更新配置数据到网页。

_refresh_web_data

更新self.web_data数据到网页。

_update_data

更新self.web_data的特定数据,并刷新。
key: 更新数据的键
value: 更新数据的值
refresh: 立即刷新网页数据。

_call_js_func

调用js函数,并返回结果,该函数是同步的,会自动解析json结构。
fuc_name: 函数名
*args: 放置函数的位置参数,不支持命名参数。

_call_js_func_async

调用js函数,并返回结果,该函数是异步的,会自动解析json结构。
fuc_name: 函数名
callback: 回调函数
*args: 放置函数的位置参数,不支持命名参数。

_set_js_variable

设置window对象特定变量名的值
fuc_name:变量名
data:变量值

_get_js_variable

返回全局变量特定值,该函数是同步的。
fuc_name:变量名

_serialize_elements

序列化页面元素的值,便于配置的保存
elements_selector: 要序列化的元素的选择

_deserialize_elements

反序列化数据到页面,便于配置恢复
serialize_data_str: 序列化的数据文本

_window

返回当前窗口对象。

目录
注册
{{page_data?.register_msg}}
申请账号
发送重置邮件
搜索
{{downloadForm?.title}}
描述:{{downloadForm?.description || '暂无描述信息'}}
备注:
打开下载地址
如未自动打开请手动点击
({{userInfoData?.nickname || '昵称'}}){{userInfoData?.username || '用户名'}}
ID:{{userInfoData?.id || 0}}
{{userInfoData?.money || '0'}}余额 {{userInfoData?.coin || '0'}}积分
VIP
{{item?.label}}
保存信息
修改密码
粉丝权益暂未激活
粉丝权益已激活
{{item?.name}}
qrcode