国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

React Native 橋接組件封裝原生組件屬性

這篇具有很好參考價(jià)值的文章主要介紹了React Native 橋接組件封裝原生組件屬性。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

自定義屬性可以讓組件具備更多的靈活性,所以有必要在JS 層通過自定義屬性動態(tài)傳值。

一、添加原生組件屬性

因?yàn)?ViewManager 管理了整個(gè)組件的行為,所以要新增組件屬性也需要在這里面(如 InfoViewManager)進(jìn)行定義。

1、在InfoViewManager 中定義一個(gè) setAvatar 方法。

React Native 橋接組件封裝原生組件屬性,React Native,react native,react.js,javascript
@ReactProp 是 React Native 中的注解,用于標(biāo)記一個(gè)方法,該方法用于處理從 JavaScript 到原生組件傳遞的屬性(props)的更新。

@ReactProp 注解標(biāo)記的方法應(yīng)該接受兩個(gè)參數(shù),第一個(gè)參數(shù)是原生組件實(shí)例,第二個(gè)參數(shù)是要更新的屬性的值。React Native 框架會負(fù)責(zé)確保傳遞的屬性值與方法的第二個(gè)參數(shù)類型匹配。

上圖中 setAvatar 方法被 @ReactProp 注解標(biāo)記,表示它用于處理 name 為 “avatar” 的屬性的更新。

2、這里需要從原始的視圖中拿到組件的實(shí)例去執(zhí)行更新,所以需要在 InfoView 中定義一個(gè)方法去更新組件的值。

React Native 橋接組件封裝原生組件屬性,React Native,react native,react.js,javascript
到這里就完成了頭像 avatar 這個(gè)屬性的添加。

如果沒有 Glide 這個(gè)類,可在 build.gradle 文件中添加一行代碼,重新下載依賴項(xiàng),運(yùn)行項(xiàng)目

implementation("com.github.bumptech.glide:glide:4.2.0")

React Native 橋接組件封裝原生組件屬性,React Native,react native,react.js,javascript

3、以此類推,再給組件添加一個(gè) desc屬性

React Native 橋接組件封裝原生組件屬性,React Native,react native,react.js,javascript
React Native 橋接組件封裝原生組件屬性,React Native,react native,react.js,javascript

二、在 JS 層使用原生組件屬性

1、修改公共組件 NativeInfoView 傳入兩個(gè)自定義屬性 avatardesc

React Native 橋接組件封裝原生組件屬性,React Native,react native,react.js,javascript

2、在業(yè)務(wù)組件里使用

React Native 橋接組件封裝原生組件屬性,React Native,react native,react.js,javascript

React Native 橋接組件封裝原生組件屬性,React Native,react native,react.js,javascriptReact Native 橋接組件封裝原生組件屬性,React Native,react native,react.js,javascript
效果如圖:
React Native 橋接組件封裝原生組件屬性,React Native,react native,react.js,javascript
相關(guān)鏈接:
React Native 橋接原生實(shí)現(xiàn) JS 調(diào)用原生方法
React Native 橋接原生常量
React Native 橋接原生原子組件文章來源地址http://www.zghlxwxcb.cn/news/detail-810196.html

到了這里,關(guān)于React Native 橋接組件封裝原生組件屬性的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 你應(yīng)該知道的 10 個(gè) React Native 組件庫

    你應(yīng)該知道的 10 個(gè) React Native 組件庫

    編者注 :本文最后更新于 2022 年 12 月 15 日,以包含更新、更受歡迎的庫。 在構(gòu)建 React Native 應(yīng)用程序時(shí),最佳實(shí)踐涉及利用獨(dú)立的 UI 組件來加快開發(fā)時(shí)間。這個(gè)想法并不是 React Native 獨(dú)有的;它實(shí)際上是一種 React 哲學(xué),是移動框架在很大程度上基于的哲學(xué)。 就像 React 允許

    2024年02月16日
    瀏覽(16)
  • 推薦用于學(xué)習(xí)RN原生模塊開發(fā)的開源庫—react-native-ble-manager

    推薦用于學(xué)習(xí)RN原生模塊開發(fā)的開源庫—react-native-ble-manager

    如題RN的原生模塊/Native Modules的開發(fā)是一項(xiàng)很重要的技能,但RN官網(wǎng)的示例又比較簡單,然后最近我接觸與使用、還有閱讀了react-native-ble-manager的部份源碼,發(fā)現(xiàn)里邊完全包含了一個(gè)Native Modules所涉及的知識點(diǎn)/技術(shù)點(diǎn),故特推薦給大家,共同學(xué)習(xí)與交流 react-native-ble-manager目前

    2024年02月15日
    瀏覽(29)
  • React Native Ref轉(zhuǎn)發(fā)/Memo緩存/HOC高階組件/Context上下文

    React Native Ref轉(zhuǎn)發(fā)/Memo緩存/HOC高階組件/Context上下文

    1、使用自定義組件時(shí),實(shí)現(xiàn)外層組件對原始組件(TextInput)的操作 外層組件使用 ref 屬性 子組件使用 forwardRef 包裹 2、函數(shù)式組件對外暴露實(shí)例方法(cusomFocus) 子組件 父組件如圖一所示 1 、 避免多余渲染 問題:每次點(diǎn)擊按鈕都會導(dǎo)致 InfoView 組件發(fā)生重繪,即使每次 setI

    2024年01月21日
    瀏覽(25)
  • react native 0.73 配置 react-native-fs

    npm yarn android/settings.gradle android/app/build.gradle androidappsrcmainjavacomreactnative_demoMainApplication.kt 把原代碼 改為

    2024年04月08日
    瀏覽(75)
  • 探索React Native的世界:gorhom/react-native-animated-tabbar

    項(xiàng)目地址:https://gitcode.com/gorhom/react-native-animated-tabbar 在移動應(yīng)用開發(fā)領(lǐng)域,React Native以其高效、跨平臺的能力受到了廣泛的歡迎。今天,我們要向您推薦一個(gè)極具創(chuàng)意且實(shí)用的React Native組件庫——gorhom/react-native-animated-tabbar。它是一個(gè)精美設(shè)計(jì)的動畫TabBar,為您的應(yīng)用提供生

    2024年04月17日
    瀏覽(24)
  • React與React Native的異同

    開發(fā)React一段時(shí)間了,一直沒有搞清楚React和React Native的差異。今天特意去了解下,發(fā)現(xiàn)差異還真不?。?相同點(diǎn): 1.都是Facebook公司推出的框架。 2.都是基于JSX語言開發(fā)的。 差異點(diǎn): 1、作用的平臺不同. 2、工作原理不同. 3、渲染周期不同. 4、組件構(gòu)成形式不同. 5、宿主平臺的

    2024年02月06日
    瀏覽(24)
  • 維護(hù)積極的react native,為什么會有人造謠react native不維護(hù)了,停止維護(hù)。

    維護(hù)積極的react native,為什么會有人造謠react native不維護(hù)了,停止維護(hù)。

    ? ? ? ? 其實(shí)近幾年我一直關(guān)注react -native,他一直更新頻繁,0.60大重構(gòu),升級了js執(zhí)行引擎Hermes,當(dāng)前已經(jīng)0.70.4版本了。性能越來越提高,但是總感覺到有人在刷百度,只要輸入react-native后面就自動提示熱搜“react-native 停止維護(hù)”,這誤導(dǎo)很多人以為真的不維

    2024年02月11日
    瀏覽(29)
  • 工欲善其事,必先利其器之—react-native-debugger調(diào)試react native應(yīng)用

    工欲善其事,必先利其器之—react-native-debugger調(diào)試react native應(yīng)用

    調(diào)試react應(yīng)用通常利用chrome的inspector的功能和兩個(gè)最常用的擴(kuò)展 1、React Developer Tools (主要用于debug組件結(jié)構(gòu)) 2、Redux DevTools (主要用于debug redux store的數(shù)據(jù)) 對于react native應(yīng)用,我們一般就使用react-native-debugger了,它是一個(gè)獨(dú)立的應(yīng)用,需要單獨(dú)安裝,在mac下可以用如下命令

    2024年02月16日
    瀏覽(48)
  • RN(React Native)

    RN(React Native)

    ?RN是React的原生組件庫 網(wǎng)址:React Native 中文網(wǎng) · 使用React來編寫原生應(yīng)用的框架 一、 ReactNative開發(fā)環(huán)境的搭建 ? 在本機(jī)搭建RN項(xiàng)目開發(fā)運(yùn)行環(huán)境 ?—— 3GB+ ?①安裝必需的編譯軟件:Node.js + JDK ?②安裝Android原生App開發(fā)軟件 —— Android?Studio ?③使用Android開發(fā)軟件下載編譯必

    2024年02月07日
    瀏覽(36)
  • react native 相機(jī)拍照

    安裝插件 npm install?react-native-image-picker // 引入 import { launchCamera, launchImageLibrary} from \\\'react-native-image-picker\\\'; ?代碼如下

    2024年04月09日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包