【每日學點HarmonyOS Next知識】Web Header更新、狀態變量嵌套問題、自定義彈窗、stack圓角、Flex換行問題

【每日學點HarmonyOS Next知識】Web Header更新、狀態變量嵌套問題、自定義彈窗、stack圓角、Flex換行問題

1、HarmonyOS 有關webview Header無法更新的問題?

業務A頁面 打開 webivew B頁面,第一次打開帶了header請求,然后退出webview B頁面,然后動態更新了header參數 但是抓包發現。第二次webview的請求是沒有header的 其他: headers 里的參數一直有在動態更新,debug發現每次觸發 prefetchPage 或 loadUrl 都是更新了header,但是實際請求沒有更新,而且header為空了。

prefetchPage會對同一url進行緩存,緩存時間為5min,且無法判斷當前url是否緩存,使用prefetchPage對已緩存的url再次請求時不會觸發真正的請求,也不會帶上header。

使用loadUrl,需要注意的是,在同時使用onControllerAttached時,為了防止Web組件時序問題,在web src處需要寫入空字符串。參考API文檔:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-webview-V5#ZH-CN_TOPIC_0000001847210168__setcustomuseragent10

示例代碼:

Web({ src: "", controller: this.webViewController }).onLoadIntercept(event => {if (event && event.data && event.data.getRequestUrl()) {let url = event.data.getRequestUrl()}return false}).onControllerAttached(() => {console.info("yyyyy onControllerAttached")let headers = new Array<webview.WebHeader>()headers.push({ headerKey: 'AUTHORIZATION', headerValue: 'test value' })// this.webViewController.prefetchPage(this.loadUrl, headers)this.webViewController.loadUrl(this.loadUrl, headers)})
2、HarmonyOS 嵌套一層的數組無法監聽相同數據增加,但是無嵌套的數組可以監聽相同數據增加?

嵌套一層的數組無法監聽相同數據增加,但是無嵌套的數組可以監聽相同數據增加

ArkUI的變化是與@State的變量有關系的,嵌套數組里數據是已經發生變化了,但是UI監聽不到深層的,這邊建議修改對應代碼如:

@State data5:Array<RequestData4> =  []
Text("原生數據:\n" + JSON.stringify(this.data5) ?? "2333").padding(10).fontColor(Color.Black)
this.data5 = JSON.parse(JSON.stringify( this.data.data5))
3、HarmonyOS 自定義彈窗如何在工具類中使用?

在class中定義了CustomDialogController 在組件中調用的時候 沒有反應不會彈出彈窗來 ,想問一下CustomDialog如何寫在工具類中,讓組件調用并且可以傳入內容

自定義彈窗的CustomDialogController只能在@component中使用,外部返回時會失效。 彈框場景更推薦使用promptAction.openCustomDialog,后續彈框也主要是基于promptAction做演進。開發者主要需要自定義彈框內容的buillder,使用參考:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-promptaction-V5

4、HarmonyOS stack設置圓角不生效?

參考代碼:

@Entry
@Component
struct StackExample {build() {Stack({ alignContent: Alignment.Center }) {Text('First child, show in bottom').width('90%').height('80%').backgroundColor(0xd2cab3).align(Alignment.Top)Text('Second child, show in top').width('70%').height('60%').backgroundColor(0xc1cbac).align(Alignment.Top)}.width('100%').height(150).margin({ top: 300 }).borderRadius(33).backgroundColor(Color.Red)}
}
5、HarmonyOS Flex組件設置不換行怎么能避免被截斷?

UI中通過Flex展示小標簽,產品要求只在一行展示,展示不下就不展示了。目前通過Flex組件實現標簽列表的展示,設置成NoWrap屬性后,標簽會一直平鋪下去,且最后展示的標簽還會被截斷。如果不想被截斷設置成Wrap屬性后,又無法限制單行顯示。請問如何操作?

給父組件設置高度,加上clip裁剪屬性,文檔:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-universal-attributes-sharp-clipping-V5

參考以下demo:

@Entry
@Component
struct Test66 {@State arr: string[] = ['西安市', '成都市22','成都市33','成都市44','成都市55','成都市66', '重慶市', '烏魯木齊市', '北京市', '呼倫貝爾市', '北京市333'];build() {Column() {Flex({  wrap: FlexWrap.Wrap }) {ForEach(this.arr, (item: string) => {Text(item).fontSize('16vp').borderWidth('1vp').borderColor('#666666').borderRadius('10vp').padding('3vp').height(100)})}}.width('100%').height(100).backgroundColor(0xDCDCDC).clip(true)}
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/896966.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/896966.shtml
英文地址,請注明出處:http://en.pswp.cn/news/896966.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【ATXServer2】Android無法正確顯示手機屏幕

文章目錄 現象原因分析與解決排查手機內部minicap 解決minicap問題查看移動端Android SDK版本查看minicap支持版本單次方案多次方案 最后問題-如何支持Android SDK 32 現象 原因分析與解決 由于atxserver2在與Android動終端的鏈接過程中使用了agent&#xff1a;atxserver2-and…

【前端跨域】CORS:跨域資源共享的機制與實現

在現代Web開發中&#xff0c;跨域資源共享&#xff08;Cross-Origin Resource Sharing&#xff0c;簡稱CORS&#xff09;是一種非常重要的技術&#xff0c;用于解決瀏覽器跨域請求的限制 CORS允許服務器明確指定哪些外部源可以訪問其資源&#xff0c;從而在保證安全的前提下實…

【設計模式】單例模式|餓漢模式|懶漢模式|指令重排序

目錄 1.什么是單例模式&#xff1f; 2.如何保證單例&#xff1f; 3.兩種寫法 &#xff08;1&#xff09;餓漢模式&#xff08;早創建&#xff09; &#xff08;2&#xff09;懶漢模式&#xff08;緩執行&#xff0c;可能不執行&#xff09; 4.應用場景 &#x1f525;5.多…

RocketMQ順序消費機制

RocketMQ的順序消費機制通過生產端和消費端的協同設計實現&#xff0c;其核心在于局部順序性&#xff0c;即保證同一隊列&#xff08;MessageQueue&#xff09;內的消息嚴格按發送順序消費。以下是詳細機制解析及關鍵源碼實現&#xff1a; 一、順序消費的核心機制 1. 生產端路…

【JavaEE】-- 多線程(初階)4

文章目錄 8.多線程案例8.1 單例模式8.1.1 餓漢模式8.1.2 懶漢模式 8.2 阻塞隊列8.2.1 什么是阻塞隊列8.2.2 生產者消費者模型8.2.3 標準庫中的阻塞隊列8.2.4 阻塞隊列的應用場景8.2.4.1 消息隊列 8.2.5 異步操作8.2.5 自定義實現阻塞隊列8.2.6 阻塞隊列--生產者消費者模型 8.3 …

【C++設計模式】第四篇:建造者模式(Builder)

注意&#xff1a;復現代碼時&#xff0c;確保 VS2022 使用 C17/20 標準以支持現代特性。 分步驟構造復雜對象&#xff0c;實現靈活裝配 1. 模式定義與用途 核心目標&#xff1a;將復雜對象的構建過程分離&#xff0c;使得同樣的構建步驟可以創建不同的表示形式。 常見場景&am…

vuex中的state是響應式的嗎?

在 Vue.js 中&#xff0c;Vuex 的 state 是響應式的。這意味著當你更改 state 中的數據時&#xff0c;依賴于這些數據的 Vue 組件會自動更新。這是通過 Vue 的響應式系統實現的&#xff0c;該系統使用了 ES6 的 Proxy 對象來監聽數據的變化。 當你在 Vuex 中定義了一個 state …

若依框架中的崗位與角色詳解

若依框架中的崗位與角色詳解 一、核心概念與定位 崗位&#xff08;Post&#xff09; 業務職能導向&#xff1a;崗位是用戶在組織架構中的職務標識&#xff08;如“開發人員”“項目經理”&#xff09;&#xff0c;用于描述工作職責而非直接控制權限。崗位與部門關聯&#xff…

SQL經典常用查詢語句

1. 基礎查詢語句 1.1 查詢表中所有數據 在SQL中&#xff0c;查詢表中所有數據是最基本的操作之一。通過使用SELECT * FROM table_name;語句&#xff0c;可以獲取指定表中的所有記錄和列。例如&#xff0c;假設有一個名為employees的表&#xff0c;包含員工的基本信息&#xf…

EP 架構:未來主流方向還是特定場景最優解?

DeepSeek MoE架構采用跨節點專家并行&#xff08;EP&#xff09;架構&#xff0c;在提升推理系統性能方面展現出巨大潛力。這一架構在發展進程中也面臨諸多挑戰&#xff0c;其未來究竟是會成為行業的主流方向&#xff0c;還是僅適用于特定場景&#xff0c;成為特定領域的最優解…

[密碼學實戰]Java實現國密(SM2)密鑰協商詳解:原理、代碼與實踐

一、代碼運行結果 二、國密算法與密鑰協商背景 2.1 什么是國密算法&#xff1f; 國密算法是由中國國家密碼管理局制定的商用密碼標準&#xff0c;包括&#xff1a; SM2&#xff1a;橢圓曲線公鑰密碼算法&#xff08;非對稱加密/簽名/密鑰協商&#xff09;SM3&#xff1a;密碼…

動漫短劇開發公司,短劇小程序搭建快速上線

在當今快節奏的生活里&#xff0c;人們的娛樂方式愈發多元&#xff0c;而動漫短劇作為新興娛樂形式&#xff0c;正以獨特魅力迅速崛起&#xff0c;成為娛樂市場的耀眼新星。近年來&#xff0c;動漫短劇市場呈爆發式增長&#xff0c;吸引眾多創作者與觀眾目光。 從市場規模來看…

第四十五:創建一個vue 的程序

html <div id"app">{{ msg }}<h2>{{ web.title }}</h2><h3>{{ web.url }}</h3> </div> js /*<div id"app"></div> 指定一個 id 為 app 的 div 元素{{ }} 插值表達式, 可以將 Vue 實例中定義的數據在視圖…

docer swarm集群部署springboot項目

1.準備兩臺服務器&#xff0c;安裝好docker、docker-compose 因為用到了docker倉庫&#xff0c;安裝harbor,可以從github下載離線安裝包 2. 我這邊用到了gitlab-ci,整體流程也都差不多 1&#xff09;打包mvn clean install 2&#xff09;打鏡像 docker-compose -f docker-compo…

Python測試框架Pytest的參數化

上篇博文介紹過&#xff0c;Pytest是目前比較成熟功能齊全的測試框架&#xff0c;使用率肯定也不斷攀升。 在實際工作中&#xff0c;許多測試用例都是類似的重復&#xff0c;一個個寫最后代碼會顯得很冗余。這里&#xff0c;我們來了解一下pytest.mark.parametrize裝飾器&…

開發博客系統

前言 準備工作 數據庫表分為實體表和關系表 第一&#xff0c;建數據庫表 然后導入前端頁面 創建公共模塊 就是統一返回值&#xff0c;異常那些東西 自己造一個自定義異常 普通類 mapper 獲取全部博客 我們只需要返回id&#xff0c;title&#xff0c;content&#xff0c;us…

【Spring Boot 應用開發】-05 命令行參數

Spring Boot 常用命令行參數 Spring Boot 支持多種命令行參數&#xff0c;這些參數可以在啟動應用時通過命令行直接傳遞。以下是一些常用的命令行參數及其詳細說明&#xff1a; 1. 基本配置參數 --server.port端口號 指定應用程序運行的HTTP端口&#xff0c;默認為8080。 jav…

20250304學習記錄

第一部分&#xff0c;先來了解一下各種論文期刊吧&#xff0c;畢竟也是這把歲數了&#xff0c;還什么都不懂呢 國際期刊&#xff1a; EI收集的主要有兩種&#xff0c; JA&#xff1a;EI源刊 CA&#xff1a;EI會議 CPCI也叫 ISTP 常說的SCI分區是指&#xff0c;JCR的一區、…

2024 年 MySQL 8.0.40 安裝配置、Workbench漢化教程最簡易(保姆級)

首先到官網上下載安裝包&#xff1a;http://www.mysql.com 點擊下載&#xff0c;拉到最下面&#xff0c;點擊社區版下載 windows用戶點擊下面適用于windows的安裝程序 點擊下載&#xff0c;網絡條件好可以點第一個&#xff0c;怕下著下著斷了點第二個離線下載 雙擊下載好的安裝…

網絡安全檢查漏洞內容回復 網絡安全的漏洞

網絡安全的核心目標是保障業務系統的可持續性和數據的安全性&#xff0c;而這兩點的主要威脅來自于蠕蟲的暴發、黑客的攻擊、拒絕服務攻擊、木馬。蠕蟲、黑客攻擊問題都和漏洞緊密聯系在一起&#xff0c;一旦有重大安全漏洞出現&#xff0c;整個互聯網就會面臨一次重大挑戰。雖…