Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
b88b1794
D
Docs
项目概览
OpenHarmony
/
Docs
大约 2 年 前同步成功
通知
161
Star
293
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
b88b1794
编写于
6月 08, 2023
作者:
O
openharmony_ci
提交者:
Gitee
6月 08, 2023
浏览文件
操作
浏览文件
下载
差异文件
!19151 modify web docs (4.0 beta1)
Merge pull request !19151 from 李想/OpenHarmony-4.0-Beta1
上级
710f85db
95e4d987
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
175 addition
and
113 deletion
+175
-113
zh-cn/application-dev/reference/apis/js-apis-webview.md
zh-cn/application-dev/reference/apis/js-apis-webview.md
+139
-79
zh-cn/application-dev/reference/arkui-ts/ts-basic-components-web.md
...ication-dev/reference/arkui-ts/ts-basic-components-web.md
+36
-34
未找到文件。
zh-cn/application-dev/reference/apis/js-apis-webview.md
浏览文件 @
b88b1794
...
@@ -63,42 +63,6 @@ struct WebComponent {
...
@@ -63,42 +63,6 @@ struct WebComponent {
通过WebMessagePort可以进行消息的发送以及接收。
通过WebMessagePort可以进行消息的发送以及接收。
### close
close(): void
关闭该消息端口。
**系统能力:**
SystemCapability.Web.Webview.Core
**示例:**
```
ts
// xxx.ets
import
web_webview
from
'
@ohos.web.webview
'
@
Entry
@
Component
struct
WebComponent
{
controller
:
web_webview
.
WebviewController
=
new
web_webview
.
WebviewController
();
msgPort
:
web_webview
.
WebMessagePort
[]
=
null
;
build
()
{
Column
()
{
Button
(
'
close
'
)
.
onClick
(()
=>
{
if
(
this
.
msgPort
&&
this
.
msgPort
[
1
])
{
this
.
msgPort
[
1
].
close
();
}
else
{
console
.
error
(
"
msgPort is null, Please initialize first
"
);
}
})
Web
({
src
:
'
www.example.com
'
,
controller
:
this
.
controller
})
}
}
}
```
### postMessageEvent
### postMessageEvent
postMessageEvent(message: WebMessage): void
postMessageEvent(message: WebMessage): void
...
@@ -448,6 +412,56 @@ function postStringToApp() {
...
@@ -448,6 +412,56 @@ function postStringToApp() {
}
}
```
```
### close
close(): void
关闭该消息端口。在使用close前,请先使用
[
createWebMessagePorts
](
#createwebmessageports
)
创建消息端口。
**系统能力:**
SystemCapability.Web.Webview.Core
**示例:**
```
ts
// xxx.ets
import
web_webview
from
'
@ohos.web.webview
'
@
Entry
@
Component
struct
WebComponent
{
controller
:
web_webview
.
WebviewController
=
new
web_webview
.
WebviewController
();
msgPort
:
web_webview
.
WebMessagePort
[]
=
null
;
build
()
{
Column
()
{
// 先使用createWebMessagePorts创建端口。
Button
(
'
createWebMessagePorts
'
)
.
onClick
(()
=>
{
try
{
this
.
msgPort
=
this
.
controller
.
createWebMessagePorts
();
console
.
log
(
"
createWebMessagePorts size:
"
+
this
.
msgPort
.
length
)
}
catch
(
error
)
{
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
}
})
Button
(
'
close
'
)
.
onClick
(()
=>
{
try
{
if
(
this
.
msgPort
&&
this
.
msgPort
.
length
==
2
)
{
this
.
msgPort
[
1
].
close
();
}
else
{
console
.
error
(
"
msgPort is null, Please initialize first
"
);
}
}
catch
(
error
)
{
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
}
})
Web
({
src
:
'
www.example.com
'
,
controller
:
this
.
controller
})
}
}
}
```
## WebviewController
## WebviewController
通过WebviewController可以控制Web组件各种行为。一个WebviewController对象只能控制一个Web组件,且必须在Web组件和WebviewController绑定后,才能调用WebviewController上的方法(静态方法除外)。
通过WebviewController可以控制Web组件各种行为。一个WebviewController对象只能控制一个Web组件,且必须在Web组件和WebviewController绑定后,才能调用WebviewController上的方法(静态方法除外)。
...
@@ -473,7 +487,6 @@ export default class EntryAbility extends UIAbility {
...
@@ -473,7 +487,6 @@ export default class EntryAbility extends UIAbility {
onCreate
(
want
,
launchParam
)
{
onCreate
(
want
,
launchParam
)
{
console
.
log
(
"
EntryAbility onCreate
"
)
console
.
log
(
"
EntryAbility onCreate
"
)
web_webview
.
WebviewController
.
initializeWebEngine
()
web_webview
.
WebviewController
.
initializeWebEngine
()
globalThis
.
abilityWant
=
want
console
.
log
(
"
EntryAbility onCreate done
"
)
console
.
log
(
"
EntryAbility onCreate done
"
)
}
}
}
}
...
@@ -516,30 +529,11 @@ export default class EntryAbility extends UIAbility {
...
@@ -516,30 +529,11 @@ export default class EntryAbility extends UIAbility {
}
}
```
```
### 创建对象
```
ts
// xxx.ets
import
web_webview
from
'
@ohos.web.webview
'
;
@
Entry
@
Component
struct
WebComponent
{
controller
:
web_webview
.
WebviewController
=
new
web_webview
.
WebviewController
();
build
()
{
Column
()
{
Web
({
src
:
'
www.example.com
'
,
controller
:
this
.
controller
})
}
}
}
```
### setWebDebuggingAccess
### setWebDebuggingAccess
static setWebDebuggingAccess(webDebuggingAccess: boolean): void
static setWebDebuggingAccess(webDebuggingAccess: boolean): void
设置是否启用网页调试功能。
设置是否启用网页调试功能。
详情请参考
[
Devtools工具
](
../../web/web-debugging-with-devtools.md
)
。
**系统能力:**
SystemCapability.Web.Webview.Core
**系统能力:**
SystemCapability.Web.Webview.Core
...
@@ -617,7 +611,7 @@ struct WebComponent {
...
@@ -617,7 +611,7 @@ struct WebComponent {
Button
(
'
loadUrl
'
)
Button
(
'
loadUrl
'
)
.
onClick
(()
=>
{
.
onClick
(()
=>
{
try
{
try
{
//
需要加载的URL是string类型
//
需要加载的URL是string类型。
this
.
controller
.
loadUrl
(
'
www.example.com
'
);
this
.
controller
.
loadUrl
(
'
www.example.com
'
);
}
catch
(
error
)
{
}
catch
(
error
)
{
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
...
@@ -643,7 +637,7 @@ struct WebComponent {
...
@@ -643,7 +637,7 @@ struct WebComponent {
Button
(
'
loadUrl
'
)
Button
(
'
loadUrl
'
)
.
onClick
(()
=>
{
.
onClick
(()
=>
{
try
{
try
{
//
带参数headers
//
带参数headers。
this
.
controller
.
loadUrl
(
'
www.example.com
'
,
[{
headerKey
:
"
headerKey
"
,
headerValue
:
"
headerValue
"
}]);
this
.
controller
.
loadUrl
(
'
www.example.com
'
,
[{
headerKey
:
"
headerKey
"
,
headerValue
:
"
headerValue
"
}]);
}
catch
(
error
)
{
}
catch
(
error
)
{
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
...
@@ -656,6 +650,7 @@ struct WebComponent {
...
@@ -656,6 +650,7 @@ struct WebComponent {
```
```
加载本地网页,加载本地资源文件有三种方式。
加载本地网页,加载本地资源文件有三种方式。
1.
$rawfile方式。
1.
$rawfile方式。
```
ts
```
ts
// xxx.ets
// xxx.ets
...
@@ -671,8 +666,8 @@ struct WebComponent {
...
@@ -671,8 +666,8 @@ struct WebComponent {
Button
(
'
loadUrl
'
)
Button
(
'
loadUrl
'
)
.
onClick
(()
=>
{
.
onClick
(()
=>
{
try
{
try
{
//
通过$rawfile加载本地资源文件
//
通过$rawfile加载本地资源文件。
this
.
controller
.
loadUrl
(
$rawfile
(
'
xx
x.html
'
));
this
.
controller
.
loadUrl
(
$rawfile
(
'
inde
x.html
'
));
}
catch
(
error
)
{
}
catch
(
error
)
{
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
}
}
...
@@ -682,6 +677,7 @@ struct WebComponent {
...
@@ -682,6 +677,7 @@ struct WebComponent {
}
}
}
}
```
```
2.
resources协议。
2.
resources协议。
```
ts
```
ts
// xxx.ets
// xxx.ets
...
@@ -697,8 +693,8 @@ struct WebComponent {
...
@@ -697,8 +693,8 @@ struct WebComponent {
Button
(
'
loadUrl
'
)
Button
(
'
loadUrl
'
)
.
onClick
(()
=>
{
.
onClick
(()
=>
{
try
{
try
{
//
通过resource协议加载本地资源文件
//
通过resource协议加载本地资源文件。
this
.
controller
.
loadUrl
(
"
resource://rawfile/
xx
x.html
"
);
this
.
controller
.
loadUrl
(
"
resource://rawfile/
inde
x.html
"
);
}
catch
(
error
)
{
}
catch
(
error
)
{
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
}
}
...
@@ -711,8 +707,9 @@ struct WebComponent {
...
@@ -711,8 +707,9 @@ struct WebComponent {
3.
通过沙箱路径加载本地文件,可以参考
[
web
](
../arkui-ts/ts-basic-components-web.md#web
)
加载沙箱路径的示例代码。
3.
通过沙箱路径加载本地文件,可以参考
[
web
](
../arkui-ts/ts-basic-components-web.md#web
)
加载沙箱路径的示例代码。
加载的html文件。
```
html
```
html
<!--
xx
x.html -->
<!--
inde
x.html -->
<!DOCTYPE html>
<!DOCTYPE html>
<html>
<html>
<body>
<body>
...
@@ -1343,6 +1340,24 @@ struct Index {
...
@@ -1343,6 +1340,24 @@ struct Index {
}
}
```
```
加载的html文件。
```
html
<!-- index.html -->
<!DOCTYPE html>
<html>
<meta
charset=
"utf-8"
>
<body>
Hello world!
</body>
<script
type=
"text/javascript"
>
function
htmlTest
()
{
str
=
objName
.
test
(
"
test function
"
)
console
.
log
(
'
objName.test result:
'
+
str
)
}
</script>
</html>
```
### runJavaScript
### runJavaScript
runJavaScript(script: string, callback : AsyncCallback
\<
string>): void
runJavaScript(script: string, callback : AsyncCallback
\<
string>): void
...
@@ -1406,6 +1421,24 @@ struct WebComponent {
...
@@ -1406,6 +1421,24 @@ struct WebComponent {
}
}
```
```
加载的html文件。
```
html
<!-- index.html -->
<!DOCTYPE html>
<html>
<meta
charset=
"utf-8"
>
<body>
Hello world!
</body>
<script
type=
"text/javascript"
>
function
test
()
{
console
.
log
(
'
Ark WebComponent
'
)
return
"
This value is from index.html
"
}
</script>
</html>
```
### runJavaScript
### runJavaScript
runJavaScript(script: string): Promise
\<
string>
runJavaScript(script: string): Promise
\<
string>
...
@@ -1470,6 +1503,23 @@ struct WebComponent {
...
@@ -1470,6 +1503,23 @@ struct WebComponent {
}
}
```
```
加载的html文件。
```
html
<!-- index.html -->
<!DOCTYPE html>
<html>
<meta
charset=
"utf-8"
>
<body>
Hello world!
</body>
<script
type=
"text/javascript"
>
function
test
()
{
console
.
log
(
'
Ark WebComponent
'
)
return
"
This value is from index.html
"
}
</script>
</html>
```
### runJavaScriptExt<sup>10+</sup>
### runJavaScriptExt<sup>10+</sup>
...
@@ -1569,8 +1619,11 @@ struct WebComponent {
...
@@ -1569,8 +1619,11 @@ struct WebComponent {
}
}
}
}
}
}
```
//index.html
加载的html文件。
```
html
<!-- index.html -->
<!DOCTYPE html>
<!DOCTYPE html>
<html
lang=
"en-gb"
>
<html
lang=
"en-gb"
>
<body>
<body>
...
@@ -1681,8 +1734,11 @@ struct WebComponent {
...
@@ -1681,8 +1734,11 @@ struct WebComponent {
}
}
}
}
}
}
```
//index.html
加载的html文件。
```
html
<!-- index.html -->
<!DOCTYPE html>
<!DOCTYPE html>
<html
lang=
"en-gb"
>
<html
lang=
"en-gb"
>
<body>
<body>
...
@@ -2178,14 +2234,15 @@ struct WebComponent {
...
@@ -2178,14 +2234,15 @@ struct WebComponent {
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
}
}
})
})
Web
({
src
:
$rawfile
(
'
xx
x.html
'
),
controller
:
this
.
controller
})
Web
({
src
:
$rawfile
(
'
inde
x.html
'
),
controller
:
this
.
controller
})
}
}
}
}
}
}
```
```
加载的html文件。
```
html
```
html
<!--
xx
x.html-->
<!--
inde
x.html-->
<!DOCTYPE html>
<!DOCTYPE html>
<html>
<html>
<head>
<head>
...
@@ -2973,14 +3030,15 @@ struct WebComponent {
...
@@ -2973,14 +3030,15 @@ struct WebComponent {
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
}
}
})
})
Web
({
src
:
'
www.example.com
'
,
controller
:
this
.
controller
})
Web
({
src
:
$rawfile
(
'
index.html
'
)
,
controller
:
this
.
controller
})
}
}
}
}
}
}
```
```
加载的html文件。
```
html
```
html
<!--
xx
x.html-->
<!--
inde
x.html-->
<!DOCTYPE html>
<!DOCTYPE html>
<html>
<html>
<head>
<head>
...
@@ -3045,14 +3103,15 @@ struct WebComponent {
...
@@ -3045,14 +3103,15 @@ struct WebComponent {
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
console
.
error
(
`ErrorCode:
${
error
.
code
}
, Message:
${
error
.
message
}
`
);
}
}
})
})
Web
({
src
:
'
www.example.com
'
,
controller
:
this
.
controller
})
Web
({
src
:
$rawfile
(
'
index.html
'
)
,
controller
:
this
.
controller
})
}
}
}
}
}
}
```
```
加载的html文件。
```
html
```
html
<!--
xx
x.html-->
<!--
inde
x.html-->
<!DOCTYPE html>
<!DOCTYPE html>
<html>
<html>
<head>
<head>
...
@@ -3123,8 +3182,9 @@ struct WebComponent {
...
@@ -3123,8 +3182,9 @@ struct WebComponent {
}
}
```
```
加载的html文件。
```
html
```
html
<!--
xx
x.html-->
<!--
inde
x.html-->
<!DOCTYPE html>
<!DOCTYPE html>
<html>
<html>
<head>
<head>
...
@@ -3640,7 +3700,7 @@ struct WebComponent {
...
@@ -3640,7 +3700,7 @@ struct WebComponent {
.
onClick
(()
=>
{
.
onClick
(()
=>
{
try
{
try
{
let
state
=
this
.
controller
.
serializeWebState
();
let
state
=
this
.
controller
.
serializeWebState
();
// globalThis.cacheDir从
Main
Ability.ts中获取。
// globalThis.cacheDir从
Entry
Ability.ts中获取。
let
path
=
globalThis
.
cacheDir
;
let
path
=
globalThis
.
cacheDir
;
path
+=
'
/WebState
'
;
path
+=
'
/WebState
'
;
// 以同步方法打开文件。
// 以同步方法打开文件。
...
@@ -3657,14 +3717,14 @@ struct WebComponent {
...
@@ -3657,14 +3717,14 @@ struct WebComponent {
}
}
```
```
2.
修改
Main
Ability.ts。
2.
修改
Entry
Ability.ts。
获取应用缓存文件路径。
获取应用缓存文件路径。
```
ts
```
ts
// xxx.ts
// xxx.ts
import
UIAbility
from
'
@ohos.app.ability.UIAbility
'
;
import
UIAbility
from
'
@ohos.app.ability.UIAbility
'
;
import
web_webview
from
'
@ohos.web.webview
'
;
import
web_webview
from
'
@ohos.web.webview
'
;
export
default
class
Main
Ability
extends
UIAbility
{
export
default
class
Entry
Ability
extends
UIAbility
{
onCreate
(
want
,
launchParam
)
{
onCreate
(
want
,
launchParam
)
{
// 通过在globalThis对象上绑定cacheDir,可以实现UIAbility组件与Page之间的数据同步。
// 通过在globalThis对象上绑定cacheDir,可以实现UIAbility组件与Page之间的数据同步。
globalThis
.
cacheDir
=
this
.
context
.
cacheDir
;
globalThis
.
cacheDir
=
this
.
context
.
cacheDir
;
...
@@ -3712,7 +3772,7 @@ struct WebComponent {
...
@@ -3712,7 +3772,7 @@ struct WebComponent {
Button
(
'
RestoreWebState
'
)
Button
(
'
RestoreWebState
'
)
.
onClick
(()
=>
{
.
onClick
(()
=>
{
try
{
try
{
// globalThis.cacheDir从
Main
Ability.ts中获取。
// globalThis.cacheDir从
Entry
Ability.ts中获取。
let
path
=
globalThis
.
cacheDir
;
let
path
=
globalThis
.
cacheDir
;
path
+=
'
/WebState
'
;
path
+=
'
/WebState
'
;
// 以同步方法打开文件。
// 以同步方法打开文件。
...
@@ -3739,14 +3799,14 @@ struct WebComponent {
...
@@ -3739,14 +3799,14 @@ struct WebComponent {
}
}
```
```
2.
修改
Main
Ability.ts。
2.
修改
Entry
Ability.ts。
获取应用缓存文件路径。
获取应用缓存文件路径。
```
ts
```
ts
// xxx.ts
// xxx.ts
import
UIAbility
from
'
@ohos.app.ability.UIAbility
'
;
import
UIAbility
from
'
@ohos.app.ability.UIAbility
'
;
import
web_webview
from
'
@ohos.web.webview
'
;
import
web_webview
from
'
@ohos.web.webview
'
;
export
default
class
Main
Ability
extends
UIAbility
{
export
default
class
Entry
Ability
extends
UIAbility
{
onCreate
(
want
,
launchParam
)
{
onCreate
(
want
,
launchParam
)
{
// 通过在globalThis对象上绑定cacheDir,可以实现UIAbility组件与Page之间的数据同步。
// 通过在globalThis对象上绑定cacheDir,可以实现UIAbility组件与Page之间的数据同步。
globalThis
.
cacheDir
=
this
.
context
.
cacheDir
;
globalThis
.
cacheDir
=
this
.
context
.
cacheDir
;
...
...
zh-cn/application-dev/reference/arkui-ts/ts-basic-components-web.md
浏览文件 @
b88b1794
...
@@ -60,7 +60,7 @@ Web(options: { src: ResourceStr, controller: WebviewController | WebController})
...
@@ -60,7 +60,7 @@ Web(options: { src: ResourceStr, controller: WebviewController | WebController})
controller
:
web_webview
.
WebviewController
=
new
web_webview
.
WebviewController
()
controller
:
web_webview
.
WebviewController
=
new
web_webview
.
WebviewController
()
build
()
{
build
()
{
Column
()
{
Column
()
{
//
通过$rawfile加载本地资源文件
//
通过$rawfile加载本地资源文件。
Web
({
src
:
$rawfile
(
"
index.html
"
),
controller
:
this
.
controller
})
Web
({
src
:
$rawfile
(
"
index.html
"
),
controller
:
this
.
controller
})
}
}
}
}
...
@@ -77,7 +77,7 @@ Web(options: { src: ResourceStr, controller: WebviewController | WebController})
...
@@ -77,7 +77,7 @@ Web(options: { src: ResourceStr, controller: WebviewController | WebController})
controller
:
web_webview
.
WebviewController
=
new
web_webview
.
WebviewController
()
controller
:
web_webview
.
WebviewController
=
new
web_webview
.
WebviewController
()
build
()
{
build
()
{
Column
()
{
Column
()
{
//
通过resource协议加载本地资源文件
//
通过resource协议加载本地资源文件。
Web
({
src
:
"
resource://rawfile/index.html
"
,
controller
:
this
.
controller
})
Web
({
src
:
"
resource://rawfile/index.html
"
,
controller
:
this
.
controller
})
}
}
}
}
...
@@ -90,7 +90,7 @@ Web(options: { src: ResourceStr, controller: WebviewController | WebController})
...
@@ -90,7 +90,7 @@ Web(options: { src: ResourceStr, controller: WebviewController | WebController})
```
ts
```
ts
// xxx.ets
// xxx.ets
import
web_webview
from
'
@ohos.web.webview
'
import
web_webview
from
'
@ohos.web.webview
'
let
url
=
'
file://
'
+
globalThis
.
filesDir
+
'
/
xx
x.html
'
let
url
=
'
file://
'
+
globalThis
.
filesDir
+
'
/
inde
x.html
'
@
Entry
@
Entry
@
Component
@
Component
...
@@ -105,7 +105,7 @@ Web(options: { src: ResourceStr, controller: WebviewController | WebController})
...
@@ -105,7 +105,7 @@ Web(options: { src: ResourceStr, controller: WebviewController | WebController})
}
}
```
```
2.
修改
Main
Ability.ts。
2.
修改
Entry
Ability.ts。
以filesDir为例,获取沙箱路径。若想获取其他路径,请参考
[
应用开发路径
](
../../application-models/application-context-stage.md#获取应用开发路径
)
。
以filesDir为例,获取沙箱路径。若想获取其他路径,请参考
[
应用开发路径
](
../../application-models/application-context-stage.md#获取应用开发路径
)
。
```
ts
```
ts
// xxx.ts
// xxx.ts
...
@@ -121,6 +121,7 @@ Web(options: { src: ResourceStr, controller: WebviewController | WebController})
...
@@ -121,6 +121,7 @@ Web(options: { src: ResourceStr, controller: WebviewController | WebController})
}
}
```
```
加载的html文件。
```
html
```
html
<!-- index.html -->
<!-- index.html -->
<!DOCTYPE html>
<!DOCTYPE html>
...
@@ -241,7 +242,7 @@ javaScriptProxy(javaScriptProxy: { object: object, name: string, methodList: Arr
...
@@ -241,7 +242,7 @@ javaScriptProxy(javaScriptProxy: { object: object, name: string, methodList: Arr
| object | object | 是 | - | 参与注册的对象。只能声明方法,不能声明属性。 |
| object | object | 是 | - | 参与注册的对象。只能声明方法,不能声明属性。 |
| name | string | 是 | - | 注册对象的名称,与window中调用的对象名一致。 |
| name | string | 是 | - | 注册对象的名称,与window中调用的对象名一致。 |
| methodList | Array
\<
string
\>
| 是 | - | 参与注册的应用侧JavaScript对象的方法。 |
| methodList | Array
\<
string
\>
| 是 | - | 参与注册的应用侧JavaScript对象的方法。 |
| controller |
[
WebviewController<sup>9+</sup>
](
../apis/js-apis-webview.md#webviewcontroller
)
\|
[
WebController
](
#webcontroller
)
| 是 | - | 控制器。从API Version 9开始,WebController再维护,建议使用WebviewController替代。 |
| controller |
[
WebviewController<sup>9+</sup>
](
../apis/js-apis-webview.md#webviewcontroller
)
\|
[
WebController
](
#webcontroller
)
| 是 | - | 控制器。从API Version 9开始,WebController
不
再维护,建议使用WebviewController替代。 |
**示例:**
**示例:**
...
@@ -585,15 +586,16 @@ horizontalScrollBarAccess(horizontalScrollBar: boolean)
...
@@ -585,15 +586,16 @@ horizontalScrollBarAccess(horizontalScrollBar: boolean)
controller
:
web_webview
.
WebviewController
=
new
web_webview
.
WebviewController
()
controller
:
web_webview
.
WebviewController
=
new
web_webview
.
WebviewController
()
build
()
{
build
()
{
Column
()
{
Column
()
{
Web
({
src
:
'
www.example.com
'
,
controller
:
this
.
controller
})
Web
({
src
:
$rawfile
(
'
index.html
'
)
,
controller
:
this
.
controller
})
.
horizontalScrollBarAccess
(
true
)
.
horizontalScrollBarAccess
(
true
)
}
}
}
}
}
}
```
```
加载的html文件。
```
html
```
html
<!--
xx
x.html-->
<!--
inde
x.html-->
<!DOCTYPE html>
<!DOCTYPE html>
<html>
<html>
<head>
<head>
...
@@ -638,15 +640,16 @@ verticalScrollBarAccess(verticalScrollBar: boolean)
...
@@ -638,15 +640,16 @@ verticalScrollBarAccess(verticalScrollBar: boolean)
controller
:
web_webview
.
WebviewController
=
new
web_webview
.
WebviewController
()
controller
:
web_webview
.
WebviewController
=
new
web_webview
.
WebviewController
()
build
()
{
build
()
{
Column
()
{
Column
()
{
Web
({
src
:
'
www.example.com
'
,
controller
:
this
.
controller
})
Web
({
src
:
$rawfile
(
'
index.html
'
)
,
controller
:
this
.
controller
})
.
verticalScrollBarAccess
(
true
)
.
verticalScrollBarAccess
(
true
)
}
}
}
}
}
}
```
```
加载的html文件。
```
html
```
html
<!--
xx
x.html-->
<!--
inde
x.html-->
<!DOCTYPE html>
<!DOCTYPE html>
<html>
<html>
<head>
<head>
...
@@ -1418,7 +1421,7 @@ onAlert(callback: (event?: { url: string; message: string; result: JsResult }) =
...
@@ -1418,7 +1421,7 @@ onAlert(callback: (event?: { url: string; message: string; result: JsResult }) =
controller
:
web_webview
.
WebviewController
=
new
web_webview
.
WebviewController
()
controller
:
web_webview
.
WebviewController
=
new
web_webview
.
WebviewController
()
build
()
{
build
()
{
Column
()
{
Column
()
{
Web
({
src
:
$rawfile
(
"
xx
x.html
"
),
controller
:
this
.
controller
})
Web
({
src
:
$rawfile
(
"
inde
x.html
"
),
controller
:
this
.
controller
})
.
onAlert
((
event
)
=>
{
.
onAlert
((
event
)
=>
{
console
.
log
(
"
event.url:
"
+
event
.
url
)
console
.
log
(
"
event.url:
"
+
event
.
url
)
console
.
log
(
"
event.message:
"
+
event
.
message
)
console
.
log
(
"
event.message:
"
+
event
.
message
)
...
@@ -1448,8 +1451,9 @@ onAlert(callback: (event?: { url: string; message: string; result: JsResult }) =
...
@@ -1448,8 +1451,9 @@ onAlert(callback: (event?: { url: string; message: string; result: JsResult }) =
}
}
```
```
```
加载的html文件。
<!--xxx.html-->
```
html
<!--index.html-->
<!DOCTYPE html>
<!DOCTYPE html>
<html>
<html>
<head>
<head>
...
@@ -1500,7 +1504,7 @@ onBeforeUnload(callback: (event?: { url: string; message: string; result: JsResu
...
@@ -1500,7 +1504,7 @@ onBeforeUnload(callback: (event?: { url: string; message: string; result: JsResu
build
()
{
build
()
{
Column
()
{
Column
()
{
Web
({
src
:
$rawfile
(
"
xx
x.html
"
),
controller
:
this
.
controller
})
Web
({
src
:
$rawfile
(
"
inde
x.html
"
),
controller
:
this
.
controller
})
.
onBeforeUnload
((
event
)
=>
{
.
onBeforeUnload
((
event
)
=>
{
console
.
log
(
"
event.url:
"
+
event
.
url
)
console
.
log
(
"
event.url:
"
+
event
.
url
)
console
.
log
(
"
event.message:
"
+
event
.
message
)
console
.
log
(
"
event.message:
"
+
event
.
message
)
...
@@ -1530,8 +1534,9 @@ onBeforeUnload(callback: (event?: { url: string; message: string; result: JsResu
...
@@ -1530,8 +1534,9 @@ onBeforeUnload(callback: (event?: { url: string; message: string; result: JsResu
}
}
```
```
```
加载的html文件。
<!--xxx.html-->
```
html
<!--index.html-->
<!DOCTYPE html>
<!DOCTYPE html>
<html>
<html>
<head>
<head>
...
@@ -1582,7 +1587,7 @@ onConfirm(callback: (event?: { url: string; message: string; result: JsResult })
...
@@ -1582,7 +1587,7 @@ onConfirm(callback: (event?: { url: string; message: string; result: JsResult })
build
()
{
build
()
{
Column
()
{
Column
()
{
Web
({
src
:
$rawfile
(
"
xx
x.html
"
),
controller
:
this
.
controller
})
Web
({
src
:
$rawfile
(
"
inde
x.html
"
),
controller
:
this
.
controller
})
.
onConfirm
((
event
)
=>
{
.
onConfirm
((
event
)
=>
{
console
.
log
(
"
event.url:
"
+
event
.
url
)
console
.
log
(
"
event.url:
"
+
event
.
url
)
console
.
log
(
"
event.message:
"
+
event
.
message
)
console
.
log
(
"
event.message:
"
+
event
.
message
)
...
@@ -1612,8 +1617,9 @@ onConfirm(callback: (event?: { url: string; message: string; result: JsResult })
...
@@ -1612,8 +1617,9 @@ onConfirm(callback: (event?: { url: string; message: string; result: JsResult })
}
}
```
```
```
加载的html文件。
<!--xxx.html-->
```
html
<!--index.html-->
<!DOCTYPE html>
<!DOCTYPE html>
<html>
<html>
<head>
<head>
...
@@ -1671,7 +1677,7 @@ onPrompt(callback: (event?: { url: string; message: string; value: string; resul
...
@@ -1671,7 +1677,7 @@ onPrompt(callback: (event?: { url: string; message: string; value: string; resul
build
()
{
build
()
{
Column
()
{
Column
()
{
Web
({
src
:
$rawfile
(
"
xx
x.html
"
),
controller
:
this
.
controller
})
Web
({
src
:
$rawfile
(
"
inde
x.html
"
),
controller
:
this
.
controller
})
.
onPrompt
((
event
)
=>
{
.
onPrompt
((
event
)
=>
{
console
.
log
(
"
url:
"
+
event
.
url
)
console
.
log
(
"
url:
"
+
event
.
url
)
console
.
log
(
"
message:
"
+
event
.
message
)
console
.
log
(
"
message:
"
+
event
.
message
)
...
@@ -1702,8 +1708,9 @@ onPrompt(callback: (event?: { url: string; message: string; value: string; resul
...
@@ -1702,8 +1708,9 @@ onPrompt(callback: (event?: { url: string; message: string; value: string; resul
}
}
```
```
```
加载的html文件。
<!--xxx.html-->
```
html
<!--index.html-->
<!DOCTYPE html>
<!DOCTYPE html>
<html>
<html>
<head>
<head>
...
@@ -1774,6 +1781,8 @@ onConsole(callback: (event?: { message: ConsoleMessage }) => boolean)
...
@@ -1774,6 +1781,8 @@ onConsole(callback: (event?: { message: ConsoleMessage }) => boolean)
onDownloadStart(callback: (event?: { url: string, userAgent: string, contentDisposition: string, mimetype: string, contentLength: number }) => void)
onDownloadStart(callback: (event?: { url: string, userAgent: string, contentDisposition: string, mimetype: string, contentLength: number }) => void)
通知主应用开始下载一个文件。
**参数:**
**参数:**
| 参数名 | 参数类型 | 参数描述 |
| 参数名 | 参数类型 | 参数描述 |
...
@@ -2248,7 +2257,7 @@ onScaleChange(callback: (event: {oldScale: number, newScale: number}) => void)
...
@@ -2248,7 +2257,7 @@ onScaleChange(callback: (event: {oldScale: number, newScale: number}) => void)
onUrlLoadIntercept(callback: (event?: { data:string | WebResourceRequest }) => boolean)
onUrlLoadIntercept(callback: (event?: { data:string | WebResourceRequest }) => boolean)
当Web组件加载url之前触发该回调,用于判断是否阻止此次访问。默认允许加载。
当Web组件加载url之前触发该回调,用于判断是否阻止此次访问。默认允许加载。
从API version 10开始再维护,建议使用
[
onLoadIntercept<sup>10+</sup>
](
#onloadintercept10
)
代替。
从API version 10开始
不
再维护,建议使用
[
onLoadIntercept<sup>10+</sup>
](
#onloadintercept10
)
代替。
**参数:**
**参数:**
...
@@ -3306,7 +3315,7 @@ onLoadIntercept(callback: (event?: { data: WebResourceRequest }) => boolean)
...
@@ -3306,7 +3315,7 @@ onLoadIntercept(callback: (event?: { data: WebResourceRequest }) => boolean)
| 参数名 | 参数类型 | 参数描述 |
| 参数名 | 参数类型 | 参数描述 |
| ------- | ---------------------------------------- | --------- |
| ------- | ---------------------------------------- | --------- |
| request |
[
Web
resourcer
equest
](
#webresourcerequest
)
| url请求的相关信息。 |
| request |
[
Web
ResourceR
equest
](
#webresourcerequest
)
| url请求的相关信息。 |
**返回值:**
**返回值:**
...
@@ -4931,6 +4940,7 @@ registerJavaScriptProxy(options: { object: object, name: string, methodList: Arr
...
@@ -4931,6 +4940,7 @@ registerJavaScriptProxy(options: { object: object, name: string, methodList: Arr
}
}
```
```
加载的html文件。
```
html
```
html
<!-- index.html -->
<!-- index.html -->
<!DOCTYPE html>
<!DOCTYPE html>
...
@@ -4946,7 +4956,6 @@ registerJavaScriptProxy(options: { object: object, name: string, methodList: Arr
...
@@ -4946,7 +4956,6 @@ registerJavaScriptProxy(options: { object: object, name: string, methodList: Arr
}
}
</script>
</script>
</html>
</html>
```
```
### runJavaScript<sup>(deprecated)</sup>
### runJavaScript<sup>(deprecated)</sup>
...
@@ -4992,6 +5001,7 @@ runJavaScript(options: { script: string, callback?: (result: string) => void })
...
@@ -4992,6 +5001,7 @@ runJavaScript(options: { script: string, callback?: (result: string) => void })
}
}
```
```
加载的html文件。
```
html
```
html
<!-- index.html -->
<!-- index.html -->
<!DOCTYPE html>
<!DOCTYPE html>
...
@@ -5007,7 +5017,6 @@ runJavaScript(options: { script: string, callback?: (result: string) => void })
...
@@ -5007,7 +5017,6 @@ runJavaScript(options: { script: string, callback?: (result: string) => void })
}
}
</script>
</script>
</html>
</html>
```
```
### stop<sup>(deprecated)</sup>
### stop<sup>(deprecated)</sup>
...
@@ -5073,18 +5082,11 @@ clearHistory(): void
...
@@ -5073,18 +5082,11 @@ clearHistory(): void
通过WebCookie可以控制Web组件中的cookie的各种行为,其中每个应用中的所有web组件共享一个WebCookie。通过controller方法中的getCookieManager方法可以获取WebCookie对象,进行后续的cookie管理操作。
通过WebCookie可以控制Web组件中的cookie的各种行为,其中每个应用中的所有web组件共享一个WebCookie。通过controller方法中的getCookieManager方法可以获取WebCookie对象,进行后续的cookie管理操作。
### setCookie<sup>(deprecated)</sup>
### setCookie<sup>(deprecated)</sup>
setCookie(
url: string, value: string
): boolean
setCookie(): boolean
设置cookie,该方法为同步方法。设置成功返回true,否则返回false。
设置cookie,该方法为同步方法。设置成功返回true,否则返回false。
从API version 9开始不再维护,建议使用
[
setCookie<sup>9+</sup>
](
../apis/js-apis-webview.md#setcookie
)
代替。
从API version 9开始不再维护,建议使用
[
setCookie<sup>9+</sup>
](
../apis/js-apis-webview.md#setcookie
)
代替。
**参数:**
| 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 |
| ----- | ------ | ---- | ---- | ----------------- |
| url | string | 是 | - | 要设置的cookie所属的url,建议使用完整的url。 |
| value | string | 是 | - | cookie的值。 |
**返回值:**
**返回值:**
| 类型 | 说明 |
| 类型 | 说明 |
...
@@ -5104,7 +5106,7 @@ setCookie(url: string, value: string): boolean
...
@@ -5104,7 +5106,7 @@ setCookie(url: string, value: string): boolean
Column
()
{
Column
()
{
Button
(
'
setCookie
'
)
Button
(
'
setCookie
'
)
.
onClick
(()
=>
{
.
onClick
(()
=>
{
let
result
=
this
.
controller
.
getCookieManager
().
setCookie
(
"
https://www.example.com
"
,
"
a=b
"
)
let
result
=
this
.
controller
.
getCookieManager
().
setCookie
()
console
.
log
(
"
result:
"
+
result
)
console
.
log
(
"
result:
"
+
result
)
})
})
Web
({
src
:
'
www.example.com
'
,
controller
:
this
.
controller
})
Web
({
src
:
'
www.example.com
'
,
controller
:
this
.
controller
})
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录