diff --git a/code/DocsSample/ArkWeb/UseOfflineWebComp/README.md b/code/DocsSample/ArkWeb/UseOfflineWebComp/README.md index fbd6e42eb4f7ff0e90e45f740c5ae02071940369..4a01479c5ddf3309ff4461e8edd08c801c234a0e 100755 --- a/code/DocsSample/ArkWeb/UseOfflineWebComp/README.md +++ b/code/DocsSample/ArkWeb/UseOfflineWebComp/README.md @@ -69,7 +69,6 @@ entry/src/main/ |---|---pages |---|---|---common.ets |---|---|---Index.ets // 首页 -|---|---|---index2.ets |---resources // 静态资源 |---ohosTest |---|---ets @@ -81,7 +80,9 @@ entry1/src/main/ |---|---entry1ability |---|---|---Entry1Ability.ets |---|---pages +|---|---|---common.ets |---|---|---Index.ets // 首页 +|---|---|---index2.ets |---resources // 静态资源 |---ohosTest |---|---ets @@ -93,7 +94,9 @@ entry2/src/main/ |---|---entry2ability |---|---|---Entry2Ability.ets |---|---pages +|---|---|---common.ets |---|---|---Index.ets // 首页 +|---|---|---index2.ets |---resources // 静态资源 |---ohosTest |---|---ets diff --git a/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/ets/entryability/EntryAbility.ets b/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/ets/entryability/EntryAbility.ets index 48e27547730dd2892159e6472f477e2a03b0f95d..f12badef0ae787d200e796e5bd7d2e568fafc4dc 100755 --- a/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/ets/entryability/EntryAbility.ets +++ b/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/ets/entryability/EntryAbility.ets @@ -29,8 +29,8 @@ export default class EntryAbility extends UIAbility { onWindowStageCreate(windowStage: window.WindowStage): void { windowStage.loadContent('pages/Index', (err, data) => { - // 创建空的Web动态组件(需传入UIContext),loadContent之后的任意时机均可创建 - createNWeb("about:blank", windowStage.getMainWindowSync().getUIContext()); + // 创建Web动态组件(需传入UIContext),loadContent之后的任意时机均可创建 + createNWeb('https://www.example.com', windowStage.getMainWindowSync().getUIContext()); if (err.code) { return; } diff --git a/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/ets/pages/Index.ets b/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/ets/pages/Index.ets index 9f0948d444e9663cc5fb98c226c178b5821452e9..b42cc0e997e52be1002af663912af7a87174f147 100755 --- a/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/ets/pages/Index.ets +++ b/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/ets/pages/Index.ets @@ -13,22 +13,23 @@ * limitations under the License. */ -import router from '@ohos.router'; -import { webview } from '@kit.ArkWeb'; - +// 使用NodeController的Page页 +// Index.ets +import { getNWeb } from './common' @Entry @Component -struct Index1 { - WebviewController: webview.WebviewController = new webview.WebviewController(); - +struct Index { build() { - Column() { - //已经预启动Render进程 - Button($r('app.string.Jump_to_Web_Page')).onClick(()=>{ - router.pushUrl({url: 'pages/index2'}); - }) - .width('100%') - .height('100%') + Row() { + Column() { + // NodeContainer用于与NodeController节点绑定,rebuild会触发makeNode + // Page页通过NodeContainer接口绑定NodeController,实现动态组件页面显示 + NodeContainer(getNWeb('https://www.example.com')) + .height('90%') + .width('100%') + } + .width('100%') } + .height('100%') } } diff --git a/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/ets/pages/common.ets b/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/ets/pages/common.ets index 999e9909b658c07ec2a2fbf3e3f8a47d4b79a31d..e22c3cd336dec67549ce52b69cb2f0ca33bed47a 100755 --- a/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/ets/pages/common.ets +++ b/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/ets/pages/common.ets @@ -14,6 +14,7 @@ */ // 创建NodeController +// common.ets import { UIContext, NodeController, BuilderNode, Size, FrameNode } from '@kit.ArkUI'; import { webview } from '@kit.ArkWeb'; diff --git a/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/ets/pages/index2.ets b/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/ets/pages/index2.ets deleted file mode 100755 index 46b3ca95cbd8a28de2800255aa05a0aae127029a..0000000000000000000000000000000000000000 --- a/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/ets/pages/index2.ets +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) 2025 Huawei Device Co., Ltd. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import web_webview from '@ohos.web.webview'; - -@Entry -@Component -struct index2 { - webviewController: web_webview.WebviewController = new web_webview.WebviewController(); - - build() { - Row() { - Column() { - Web({src: 'www.example.com', controller: this.webviewController}) - .width('100%') - .height('100%') - } - .width('100%') - } - .height('100%') - } -} diff --git a/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/resources/base/element/string.json b/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/resources/base/element/string.json index 3afe7d393868a535eb17fc07be39b22902128b6d..325d863aa7f8a3c7d5a94d68779702003bd7242e 100755 --- a/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/resources/base/element/string.json +++ b/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/resources/base/element/string.json @@ -11,10 +11,6 @@ { "name": "EntryAbility_label", "value": "UseOfflineWebComp" - }, - { - "name": "Jump_to_Web_Page", - "value": "跳转到Web页面" } ] } \ No newline at end of file diff --git a/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/resources/base/profile/main_pages.json b/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/resources/base/profile/main_pages.json index 63fa709f03d48768274fa57cdbf8104fe61bd5f9..1898d94f58d6128ab712be2c68acc7c98e9ab9ce 100755 --- a/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/resources/base/profile/main_pages.json +++ b/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/main/resources/base/profile/main_pages.json @@ -1,6 +1,5 @@ { "src": [ - "pages/Index", - "pages/index2" + "pages/Index" ] } diff --git a/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/ohosTest/ets/test/Ability.test.ets b/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/ohosTest/ets/test/Ability.test.ets index 5fbb00cdba13281489b6762e7c80eda224515604..a45a1a8b939bf11a63fba92c8574ed59cba7f4f3 100755 --- a/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/ohosTest/ets/test/Ability.test.ets +++ b/code/DocsSample/ArkWeb/UseOfflineWebComp/entry/src/ohosTest/ets/test/Ability.test.ets @@ -59,10 +59,6 @@ export default function abilityTest() { expect(ability.context.abilityInfo.name).assertEqual('EntryAbility'); await driver.delayMs(3000); - const button = await driver.findComponent(ON.type('Button')); - await button.click(); - await driver.delayMs(2000); - const web1 = await driver.findComponent(ON.type('Web')); let src: string = await web1.getText(); expect(src).assertContain('example.com');