天品互联-北京APP开发公司-小程序开发制作-软件开发

15321250321
010-86462584

APP開發(fā) > APP學(xué)院 > APP開發(fā)工具

JS開發(fā)手機(jī)APP

2022-06-02

JS開發(fā)手機(jī)中 Js 組件的類型 

1. 功能組件 

只需編寫 Javascript 函數(shù)即可創(chuàng)建功能組件。具體來(lái)說(shuō),函數(shù)式組件是那些接受 Props 并返回 JSX 的函數(shù)。功能組件可能會(huì)也可能不會(huì)以參數(shù)的形式接收數(shù)據(jù)。此外,功能組件沒(méi)有生命周期方法或狀態(tài),但是可以通過(guò)簡(jiǎn)單地實(shí)現(xiàn) React Hooks 來(lái)添加它們。功能組件總是易于調(diào)試、閱讀和測(cè)試。 

// Functional Component Exampleimport React from 'react';const HelloWorld = () => {
   return (
      <div>
         <p>Hello Emizen!</p>
      </div>
   )}export default HelloEmizen;

在上面的代碼圖中,它是一個(gè)簡(jiǎn)單的組件,帶有常量變量“Hello Emizen”。常量變量被分配給返回 JSX 的箭頭函數(shù)。功能組件不需要是箭頭函數(shù),也可以使用常規(guī) JavaScript 函數(shù)簡(jiǎn)單地聲明。同時(shí),Props 也可以傳入函數(shù)中,用于渲染 JSX 代碼中的數(shù)據(jù)。

2.類組件 

Class 組件是所有類型中使用最多的組件。原因是類組件具有執(zhí)行功能組件的每個(gè)功能的能力,同時(shí)還具有一些附加功能。它還可以有效地利用 React 的主要功能、道具、狀態(tài)和生命周期方法。但是,類組件與功能組件相比相對(duì)更復(fù)雜。數(shù)據(jù)可以很容易地從一個(gè)類組件傳遞到另一個(gè)類組件。

// 類組件示例import React from 'react';class HelloWorld extends React.Component {
   使成為() {
      返回 (
         <div>
            <p>你好艾米森!</p>
         </div>
      )
   }}導(dǎo)出默認(rèn)的HelloEmizen;

在上面的例子中可以觀察到 class 組件使用了extends React.Componentafter class Hello Emizen。然后,它還需要render()返回 JSX 代碼的方法。在類組件中,可以聲明一個(gè)狀態(tài),將其設(shè)置為 JavaScript 對(duì)象,并用于props在生命周期方法中處于初始階段和更改狀態(tài)。它將需要 React Hooks 通過(guò)功能組件執(zhí)行這些操作。

3.純組件

純組件是人們可以編寫的最簡(jiǎn)單、最快速的組件。由于純組件不會(huì)修改或依賴其范圍之外的不同變量的狀態(tài),因此它們可以輕松替換簡(jiǎn)單的功能組件。僅返回渲染函數(shù)的組件最適合純組件。Pure 組件的最大用例是提供優(yōu)化。 

React.Component和的最大區(qū)別在于React.PureComponent,純組件對(duì)狀態(tài)變化的比較淺。純組件自動(dòng)管理shouldComponentUpdate().

React 組件主要在以下情況下重新渲染: 

  • setState()叫做

  • forceUpdate()叫做 

  • props值已更新

4. 高階組件

也稱為 HOC 的高階組件不太像 React 組件,而更像是一種模式,這是 React 組合特性的結(jié)果。HOC 的主要用例是與其他組件共享邏輯。

// HOC Exampleimport React from 'react';import MyComponent from './components/MyComponent';class HelloEmizen extends React.Component {
   render() {
      return(
         <div>
            {this.props.myArray.map((element) => (
               <MyComponent data={element} key={element.key} />
            ))}
         </div>
      )
   }}export default HelloEmizen;

上面的代碼圖像有一個(gè)簡(jiǎn)單的組件來(lái)描述更高級(jí)別的組件。這里的關(guān)鍵代碼是this.props.myArray.map((element) => (<MyComponent />)。此函數(shù)返回組件。組件的數(shù)量?jī)H取決于數(shù)組中稱為 HOC 的元素?cái)?shù)量。該函數(shù)從 state 中獲取一個(gè)數(shù)組,從而通過(guò)將每個(gè)元素轉(zhuǎn)換為 React 組件來(lái)映射數(shù)組中的每個(gè)元素。  

以下是高階組件的簡(jiǎn)單概要: 

  1. 從 props 或 state 中獲取數(shù)據(jù)

  2. 映射數(shù)組并返回每個(gè)元素的 Reach 組件。

如何渲染 Js 開發(fā)APP組件?

可以按照以下步驟來(lái)渲染 ReactJS 組件: 

  • 首先,創(chuàng)建一個(gè) ES6 類,其名稱與 extends 相同React.Component。 

  • 一個(gè)空方法被添加到它,稱為render().

  • 函數(shù)體被移動(dòng)到render()方法中。

  • 在正文中替換為props。this.propsrender()

  • 最后,刪除剩余的空函數(shù)聲明。

反應(yīng)嵌套組件

Reactjs 最好的事情之一是組件可以相互嵌套。此功能有助于顯著創(chuàng)建復(fù)雜的用戶界面。在這里,子組件嵌套在父組件內(nèi)。組件相互嵌套稱為內(nèi)部嵌套和外部嵌套。

  • 導(dǎo)出:當(dāng)一個(gè)特定的模塊或文件被導(dǎo)出并在另一個(gè)模塊中使用時(shí),它被稱為導(dǎo)出。 

  • 導(dǎo)入:當(dāng)特定模塊或文件被導(dǎo)入并在現(xiàn)有模塊中使用時(shí),稱為導(dǎo)入。

  • 以上就是JS開發(fā)APP的介紹,對(duì)于從事js開發(fā)人員有一定的參考價(jià)值,JS開發(fā)制作手機(jī)APP是時(shí)代的趨勢(shì),開發(fā)功能多,速度快,可更新。

客服QQ:121446412 聯(lián)系電話:15321250321

京ICP備17026149號(hào)-1

版權(quán)所有@2011-2022 北京天品互聯(lián)科技有限公司 公司地址:北京市海淀區(qū)上地信息路甲28號(hào)B座(二層)02D室-010號(hào)

主站蜘蛛池模板: 发光字|标识设计|标牌制作|精神堡垒 - 江苏苏通广告有限公司 | 高速混合机_锂电混合机_VC高效混合机-无锡鑫海干燥粉体设备有限公司 | 刘秘书_你身边专业的工作范文写作小秘书 | 厂厂乐-汇聚海量采购信息的B2B微营销平台-厂厂乐官网 | 3d可视化建模_三维展示_产品3d互动数字营销_三维动画制作_3D虚拟商城 【商迪3D】三维展示服务商 广东健伦体育发展有限公司-体育工程配套及销售运动器材的体育用品服务商 | 艺术漆十大品牌_艺术涂料加盟代理_蒙太奇艺术涂料厂家品牌|艺术漆|微水泥|硅藻泥|乳胶漆 | 深圳标识制作公司-标识标牌厂家-深圳广告标识制作-玟璟广告-深圳市玟璟广告有限公司 | 航空铝型材,7系铝型材挤压,硬质阳*氧化-余润铝制品 | 奥运星-汽车性能网评-提供个性化汽车资讯 | 厌氧反应器,IC厌氧反应器,厌氧三相分离器-山东创博环保科技有限公司 | 空压机网_《压缩机》杂志| 科研ELISA试剂盒,酶联免疫检测试剂盒,昆虫_植物ELISA酶免试剂盒-上海仁捷生物科技有限公司 | 营养师网,营养师考试时间,报名入口—网站首页 | 螺杆真空泵_耐腐蚀螺杆真空泵_水环真空泵_真空机组_烟台真空泵-烟台斯凯威真空 | KBX-220倾斜开关|KBW-220P/L跑偏开关|拉绳开关|DHJY-I隔爆打滑开关|溜槽堵塞开关|欠速开关|声光报警器-山东卓信有限公司 | 螺杆真空泵_耐腐蚀螺杆真空泵_水环真空泵_真空机组_烟台真空泵-烟台斯凯威真空 | 伶俐嫂培训学校_月嫂培训班在哪里报名学费是多少_月嫂免费政府培训中心推荐 | 智能汉显全自动量热仪_微机全自动胶质层指数测定仪-鹤壁市科达仪器仪表有限公司 | 学校用栓剂模,玻璃瓶轧盖钳,小型安瓿熔封机,实验室安瓿熔封机-长沙中亚制药设备有限公司 | 公交驾校-北京公交驾校欢迎您! 工作心得_读书心得_学习心得_找心得体会范文就上学道文库 | 扬尘监测_扬尘监测系统_带证扬尘监测设备 - 郑州港迪科技有限公司 | 华东师范大学在职研究生招生网_在职研究生招生联展网 | 液晶拼接屏厂家_拼接屏品牌_拼接屏价格_监控大屏—北京维康 | 蜘蛛车-登高车-高空作业平台-高空作业车-曲臂剪叉式升降机租赁-重庆海克斯公司 | 辐射仪|辐射检测仪|辐射巡测仪|个人剂量报警仪|表面污染检测仪|辐射报警仪|辐射防护网 | 天津蒸汽/热水锅炉-电锅炉安装维修直销厂家-天津鑫淼暖通设备有限公司 | 净气型药品柜-试剂柜-无管道净气型通风柜-苏州毕恩思 | 立式_复合式_壁挂式智能化电伴热洗眼器-上海达傲洗眼器生产厂家 理化生实验室设备,吊装实验室设备,顶装实验室设备,实验室成套设备厂家,校园功能室设备,智慧书法教室方案 - 东莞市惠森教学设备有限公司 | 数控走心机-双主轴走心机厂家-南京建克 | 江西自考网| 校园文化空间设计-数字化|中医文化空间设计-党建|法治廉政主题文化空间施工-山东锐尚文化传播公司 | 空气弹簧|橡胶气囊|橡胶空气弹簧-上海松夏减震器有限公司 | 护腰带生产厂家_磁石_医用_热压护腰_登山护膝_背姿矫正带_保健护具_医疗护具-衡水港盛 | 福兰德PVC地板|PVC塑胶地板|PVC运动地板|PVC商用地板-中国弹性地板系统专业解决方案领先供应商! 福建成考网-福建成人高考网 | 找培训机构_找学习课程_励普教育 | 耐高温风管_耐高温软管_食品级软管_吸尘管_钢丝软管_卫生级软管_塑料波纹管-东莞市鑫翔宇软管有限公司 | 酒糟烘干机-豆渣烘干机-薯渣烘干机-糟渣烘干设备厂家-焦作市真节能环保设备科技有限公司 | 直线模组_滚珠丝杆滑台_模组滑台厂家_万里疆科技 | 安德建奇火花机-阿奇夏米尔慢走丝|高维|发那科-北京杰森柏汇 | 软膜天花_软膜灯箱_首选乐创品牌_一站式天花软膜材料供应商! | 高防护蠕动泵-多通道灌装系统-高防护蠕动泵-www.bjhuiyufluid.com慧宇伟业(北京)流体设备有限公司 |
收縮
  • 15321250321