{"id":12907,"date":"2023-09-16T05:47:39","date_gmt":"2023-09-16T05:47:39","guid":{"rendered":"https:\/\/www.webhozz.com\/blog\/?p=12907"},"modified":"2023-10-23T05:16:35","modified_gmt":"2023-10-23T05:16:35","slug":"lifecycle-pada-react-js","status":"publish","type":"post","link":"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/","title":{"rendered":"Lifecycle pada React JS"},"content":{"rendered":"\n<h4 class=\"wp-block-heading\"><strong>Siklus&nbsp;<\/strong><strong>Komponen<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Setiap komponen dalam React memiliki siklus yang dapat kamu amati dan manipulasi selama tiga fase utamanya.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tiga fase tersebut adalah:&nbsp;<strong>Mounting<\/strong>,&nbsp;<strong>Updating<\/strong>, and&nbsp;<strong>Unmounting<\/strong>.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Mounting<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Mounting<\/strong>&nbsp;berarti menempatkan elemen ke dalam DOM.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">React memiliki empat metode bawaan yang dipanggil, dalam urutan ini, saat memasang komponen:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>constructor()<\/li><li>getDerivedStateFromProps()<\/li><li>render()<\/li><li>componentDidMount()<\/li><\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Metode render () diperlukan dan akan selalu dipanggil, yang lain adalah opsional dan akan dipanggil jika kamu mendefinisikannya.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\"><strong>A.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/strong><strong>&nbsp;Metode Constructor<\/strong><\/h6>\n\n\n\n<p class=\"wp-block-paragraph\">Metode constructor() dipanggil sebelum apa pun, ketika komponen diinisiasi, dan metode constructor() adalah tempat alami untuk mengatur keadaan awal dan nilai awal lainnya.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Metode constructor() dipanggil dengan props, sebagai argumen, dan kamu harus selalu mulai dengan memanggil super(props) sebelum yang lain, ini akan memulai metode konstruktor induk dan memungkinkan komponen mewarisi metode dari induknya (React.Komponen).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Contoh:<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Memanggil metode constructor, oleh React, setiap kali kamu membuat komponen:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\nclass Header extends React.Component {\n  constructor(props) {\n    super(props);\n    this.state = {favoritecolor: &quot;red&quot;};\n  }\n  render() {\n    return (\n      &lt;h1&gt;My Favorite Color is {this.state.favoritecolor}&lt;\/h1&gt;\n    );\n  }\n}\n \nReactDOM.render(&lt;Header \/&gt;, document.getElementById(&#039;root&#039;));\n<\/pre><\/div>\n\n\n<h6 class=\"wp-block-heading\"><strong>B.&nbsp;&nbsp;&nbsp;&nbsp; Metode getDerivedStateFromProps<\/strong><\/h6>\n\n\n\n<p class=\"wp-block-paragraph\">Metode getDerivedStateFromProps () dipanggil tepat sebelum memberi elemen di DOM.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ini adalah tempat untuk mengatur objek state berdasarkan awal props.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dibutuhkan state sebagai argumen, dan mengembalikan objek dengan perubahan ke state.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Contoh di bawah ini dimulai dengan warna favorit menjadi \u201cred\u201d, tetapi metode getDerivedStateFromProps () memperbarui warna favorit berdasarkan atribut favcol:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Contoh<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Metode getDerivedStateFromProps dipanggil tepat sebelum metode render:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\nclass Header extends React.Component {\n  constructor(props) {\n    super(props);\n    this.state = {favoritecolor: &quot;red&quot;};\n  }\n  static getDerivedStateFromProps(props, state) {\n    return {favoritecolor: props.favcol };\n  }\n  render() {\n    return (\n      &lt;h1&gt;My Favorite Color is {this.state.favoritecolor}&lt;\/h1&gt;\n    );\n  }\n}\n \nReactDOM.render(&lt;Header favcol=&quot;yellow&quot;\/&gt;, document.getElementById(&#039;root&#039;));\n<\/pre><\/div>\n\n\n<h6 class=\"wp-block-heading\"><strong>C.&nbsp;&nbsp;&nbsp;&nbsp; Metode Render<\/strong><\/h6>\n\n\n\n<p class=\"wp-block-paragraph\">Metode render () diperlukan, dan merupakan metode yang sebenarnya menampilkan HTML ke DOM.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Contoh<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Komponen sederhana dengan metode render () sederhana:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\nclass Header extends React.Component {\n  render() {\n    return (\n      &lt;h1&gt;This is the content of the Header component&lt;\/h1&gt;\n    );\n  }\n}\n \nReactDOM.render(&lt;Header \/&gt;, document.getElementById(&#039;root&#039;));\n<\/pre><\/div>\n\n\n<h6 class=\"wp-block-heading\"><strong>D.&nbsp;&nbsp;&nbsp;&nbsp; Metode componentDidMount<\/strong><\/h6>\n\n\n\n<p class=\"wp-block-paragraph\">Metode componentDidMount () dipanggil setelah komponen diberikan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Di sinilah kamu menjalankan pernyataan yang mengharuskan komponen sudah ditempatkan di DOM.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Contoh<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pada awalnya warna favorit saya merah, tapi beri saya sebentar, dan itu kuning:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\nclass Header extends React.Component {\n  constructor(props) {\n    super(props);\n    this.state = {favoritecolor: &quot;red&quot;};\n  }\n  componentDidMount() {\n    setTimeout(() =&gt; {\n      this.setState({favoritecolor: &quot;yellow&quot;})\n    }, 1000)\n  }\n  render() {\n    return (\n      &lt;h1&gt;My Favorite Color is {this.state.favoritecolor}&lt;\/h1&gt;\n    );\n  }\n}\n \nReactDOM.render(&lt;Header \/&gt;, document.getElementById(&#039;root&#039;));\n<\/pre><\/div>\n\n\n<h4 class=\"wp-block-heading\"><strong>Updating<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Fase berikutnya dalam Lifeclyce adalah komponen Updating.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Sebuah komponen diperbarui setiap kali ada perubahan dalam ini komponen&nbsp;stateatau&nbsp;props.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">React memiliki lima metode bawaan yang dipanggil, dalam urutan ini, ketika komponen diperbarui:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>getDerivedStateFromProps()<\/li><li>shouldComponentUpdate()<\/li><li>render()<\/li><li>getSnapshotBeforeUpdate()<\/li><li>componentDidUpdate()<\/li><\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Metode render () diperlukan dan akan selalu dipanggil, yang lain adalah opsional dan akan dipanggil jika kamu mendefinisikannya.<\/p>\n\n\n\n<h6 class=\"wp-block-heading\"><strong>A.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/strong><strong>Metode getDerivedStateFromProps<\/strong><\/h6>\n\n\n\n<p class=\"wp-block-paragraph\">Juga pada update metode getDerivedStateFromProps dipanggil. Ini adalah metode pertama yang dipanggil ketika komponen diperbarui.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ini masih merupakan tempat alami untuk mengatur objek negara berdasarkan alat peraga awal.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Contoh di bawah ini memiliki tombol yang mengubah warna favorit menjadi biru, tetapi karena metode getDerivedStateFromProps () dipanggil, yang memperbarui status dengan warna dari atribut favcol, warna favorit masih tetap berwarna kuning:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Contoh<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Jika komponen di update, metode getDerivedStateFromProps () dipanggil:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\nclass Header extends React.Component {\n  constructor(props) {\n    super(props);\n    this.state = {favoritecolor: &quot;red&quot;};\n  }\n  static getDerivedStateFromProps(props, state) {\n    return {favoritecolor: props.favcol };\n  }\n  changeColor = () =&gt; {\n    this.setState({favoritecolor: &quot;blue&quot;});\n  }\n  render() {\n    return (\n      &lt;div&gt;\n      &lt;h1&gt;My Favorite Color is {this.state.favoritecolor}&lt;\/h1&gt;\n      &lt;button type=&quot;button&quot; onClick={this.changeColor}&gt;Change color&lt;\/button&gt;\n      &lt;\/div&gt;\n    );\n  }\n}\n \nReactDOM.render(&lt;Header favcol=&quot;yellow&quot;\/&gt;, document.getElementById(&#039;root&#039;));\n<\/pre><\/div>\n\n\n<h6 class=\"wp-block-heading\"><strong>B.&nbsp;&nbsp;&nbsp;&nbsp; Metode shouldComponentUpdate<\/strong><\/h6>\n\n\n\n<p class=\"wp-block-paragraph\">Dalam metode shouldComponentUpdate () kamu dapat mengembalikan nilai Boolean yang menentukan apakah React harus melanjutkan dengan memberi atau tidak.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nilai standarnya benar.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Contoh di bawah ini menunjukkan apa yang terjadi ketika metode shouldComponentUpdate () mengembalikan false:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Contoh<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Hentikan komponen rendering pada setiap update:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\nclass Header extends React.Component {\n  constructor(props) {\n    super(props);\n    this.state = {favoritecolor: &quot;red&quot;};\n  }\n  shouldComponentUpdate() {\n    return false;\n  }\n  changeColor = () =&gt; {\n    this.setState({favoritecolor: &quot;blue&quot;});\n  }\n  render() {\n    return (\n      &lt;div&gt;\n      &lt;h1&gt;My Favorite Color is {this.state.favoritecolor}&lt;\/h1&gt;\n      &lt;button type=&quot;button&quot; onClick={this.changeColor}&gt;Change color&lt;\/button&gt;\n      &lt;\/div&gt;\n    );\n  }\n}\n \nReactDOM.render(&lt;Header \/&gt;, document.getElementById(&#039;root&#039;));\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\"><strong>Contoh<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Contoh yang sama seperti di atas, tetapi kali ini metode shouldComponentUpdate () mengembalikan true sebagai gantinya:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\nclass Header extends React.Component {\n  constructor(props) {\n    super(props);\n    this.state = {favoritecolor: &quot;red&quot;};\n  }\n  shouldComponentUpdate() {\n    return true;\n  }\n  changeColor = () =&gt; {\n    this.setState({favoritecolor: &quot;blue&quot;});\n  }\n  render() {\n    return (\n      &lt;div&gt;\n      &lt;h1&gt;My Favorite Color is {this.state.favoritecolor}&lt;\/h1&gt;\n      &lt;button type=&quot;button&quot; onClick={this.changeColor}&gt;Change color&lt;\/button&gt;\n      &lt;\/div&gt;\n    );\n  }\n}\n \nReactDOM.render(&lt;Header \/&gt;, document.getElementById(&#039;root&#039;));\n<\/pre><\/div>\n\n\n<h6 class=\"wp-block-heading\"><strong>C.&nbsp;&nbsp;&nbsp;&nbsp; Metode Render<\/strong><\/h6>\n\n\n\n<p class=\"wp-block-paragraph\">Metode render () tentu saja dipanggil ketika komponen diperbarui, ia harus merender ulang HTML ke DOM, dengan perubahan baru.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Contoh di bawah ini memiliki tombol yang mengubah warna favorit menjadi biru:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Contoh<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Klik tombol untuk membuat perubahan dalam status komponen:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\nclass Header extends React.Component {\n  constructor(props) {\n    super(props);\n    this.state = {favoritecolor: &quot;red&quot;};\n  }\n  changeColor = () =&gt; {\n    this.setState({favoritecolor: &quot;blue&quot;});\n  }\n  render() {\n    return (\n      &lt;div&gt;\n      &lt;h1&gt;My Favorite Color is {this.state.favoritecolor}&lt;\/h1&gt;\n      &lt;button type=&quot;button&quot; onClick={this.changeColor}&gt;Change color&lt;\/button&gt;\n      &lt;\/div&gt;\n    );\n  }\n}\n \nReactDOM.render(&lt;Header \/&gt;, document.getElementById(&#039;root&#039;));\n<\/pre><\/div>\n\n\n<h6 class=\"wp-block-heading\"><strong>D.&nbsp;&nbsp;&nbsp;&nbsp; Metode getSnapshotBeforeUpdate<\/strong><\/h6>\n\n\n\n<p class=\"wp-block-paragraph\">Dalam metode getSnapshotBeforeUpdate () Anda memiliki akses ke alat peraga dan menyatakan sebelum pembaruan, yang berarti bahwa bahkan setelah pembaruan, kamu dapat memeriksa apa nilainya sebelum pembaruan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Jika metode getSnapshotBeforeUpdate () hadir, kamu juga harus memasukkan metode componentDidUpdate () , jika tidak, Anda akan mendapatkan kesalahan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Contoh di bawah ini mungkin terlihat rumit, tetapi yang dilakukannya hanyalah ini:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ketika komponen sedang dipasang itu diberikan dengan warna favorit \u201cmerah\u201d.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ketika komponen telah dipasang, timer mengubah status, dan setelah satu detik, warna favorit menjadi \u201ckuning\u201d.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tindakan ini memicu fase pembaruan, dan karena komponen ini memiliki metode getSnapshotBeforeUpdate (), metode ini dijalankan, dan menulis pesan ke elemen DIV1 yang kosong.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kemudian metode componentDidUpdate () dijalankan dan menulis pesan di elemen DIV2 kosong:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Contoh<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Gunakan metode getSnapshotBeforeUpdate () untuk mengetahui seperti apa objek keadaan sebelum pembaruan:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nclass Header extends React.Component {\n  constructor(props) {\n    super(props);\n    this.state = {favoritecolor: &quot;red&quot;};\n  }\n  componentDidMount() {\n    setTimeout(() =&gt; {\n      this.setState({favoritecolor: &quot;yellow&quot;})\n    }, 1000)\n  }\n  getSnapshotBeforeUpdate(prevProps, prevState) {\n    document.getElementById(&quot;div1&quot;).innerHTML =\n    &quot;Before the update, the favorite was &quot; + prevState.favoritecolor;\n  }\n  componentDidUpdate() {\n    document.getElementById(&quot;div2&quot;).innerHTML =\n    &quot;The updated favorite is &quot; + this.state.favoritecolor;\n  }\n  render() {\n    return (\n      &amp;lt;div&gt;\n        &amp;lt;h1&gt;My Favorite Color is {this.state.favoritecolor}&amp;lt;\/h1&gt;\n        &amp;lt;div id=&quot;div1&quot;&gt;&amp;lt;\/div&gt;\n        &amp;lt;div id=&quot;div2&quot;&gt;&amp;lt;\/div&gt;\n      &amp;lt;\/div&gt;\n    );\n  }\n}\n \nReactDOM.render(&amp;lt;Header \/&gt;, document.getElementById(&#039;root&#039;));\n<\/pre><\/div>\n\n\n<h6 class=\"wp-block-heading\"><strong>E.&nbsp;&nbsp;&nbsp;&nbsp; Metode componentDidUpdate<\/strong><\/h6>\n\n\n\n<p class=\"wp-block-paragraph\">Metode componentDidUpdate dipanggil setelah komponen diperbarui di DOM.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Contoh di bawah ini mungkin terlihat rumit, tetapi yang dilakukannya hanyalah ini:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ketika komponen sedang dipasang itu diberikan dengan warna favorit \u201cmerah\u201d.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ketika komponen telah dipasang, timer mengubah status, dan warnanya menjadi \u201ckuning\u201d.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tindakan ini memicu fase upate, dan karena komponen ini memiliki metode componentDidUpdate, metode ini dijalankan dan menulis pesan dalam elemen DIV kosong:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Contoh<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Metode componentDidUpdate dipanggil setelah pembaruan telah diberikan dalam DOM:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\nclass Header extends React.Component {\n  constructor(props) {\n    super(props);\n    this.state = {favoritecolor: &quot;red&quot;};\n  }\n  componentDidMount() {\n    setTimeout(() =&gt; {\n      this.setState({favoritecolor: &quot;yellow&quot;})\n    }, 1000)\n  }\n  componentDidUpdate() {\n    document.getElementById(&quot;mydiv&quot;).innerHTML =\n    &quot;The updated favorite is &quot; + this.state.favoritecolor;\n  }\n  render() {\n    return (\n      &lt;div&gt;\n      &lt;h1&gt;My Favorite Color is {this.state.favoritecolor}&lt;\/h1&gt;\n      &lt;div id=&quot;mydiv&quot;&gt;&lt;\/div&gt;\n      &lt;\/div&gt;\n    );\n  }\n}\n \nReactDOM.render(&lt;Header \/&gt;, document.getElementById(&#039;root&#039;));\n<\/pre><\/div>\n\n\n<h4 class=\"wp-block-heading\"><strong>Unmounting<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Fase berikutnya dalam siklus adalah ketika komponen dihapus dari DOM, atau unmount karena React suka menyebutnya.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">React hanya memiliki satu metode bawaan yang dipanggil ketika komponen dilepas:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>componentWillUnmount()<\/li><\/ul>\n\n\n\n<h6 class=\"wp-block-heading\"><strong>A. Metode componentWillUnmount<\/strong><\/h6>\n\n\n\n<p class=\"wp-block-paragraph\">Metode componentWillUnmount dipanggil ketika komponen akan dihapus dari DOM.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Contoh<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Klik tombol untuk menghapus tajuk:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nclass Container extends React.Component {\n  constructor(props) {\n    super(props);\n    this.state = {show: true};\n  }\n  delHeader = () =&gt; {\n    this.setState({show: false});\n  }\n  render() {\n    let myheader;\n    if (this.state.show) {\n      myheader = &amp;lt;Child \/&gt;;\n    };\n    return (\n      &amp;lt;div&gt;\n      {myheader}\n      &amp;lt;button type=&quot;button&quot; onClick={this.delHeader}&gt;Delete Header&amp;lt;\/button&gt;\n      &amp;lt;\/div&gt;\n    );\n  }\n}\n \nclass Child extends React.Component {\n  componentWillUnmount() {\n    alert(&quot;The component named Header is about to be unmounted.&quot;);\n  }\n  render() {\n    return (\n      &amp;lt;h1&gt;Hello World!&amp;lt;\/h1&gt;\n    );\n  }\n}\n \nReactDOM.render(&amp;lt;Container \/&gt;, document.getElementById(&#039;root&#039;));\n<\/pre><\/div>","protected":false},"excerpt":{"rendered":"<p>Siklus&nbsp;Komponen Setiap komponen dalam React memiliki siklus yang dapat kamu amati dan manipulasi selama tiga fase utamanya. Tiga fase tersebut adalah:&nbsp;Mounting,&nbsp;Updating, and&nbsp;Unmounting. Mounting Mounting&nbsp;berarti menempatkan<\/p>\n","protected":false},"author":15,"featured_media":10127,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2722],"tags":[4625,4626,4628,4627,4630,4629],"class_list":["post-12907","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-belajar-react-js","tag-belajar-react-js-siklus","tag-belajar-react-js-siklus-pemula","tag-kursus-react-js-siklus-bandung","tag-kursus-react-js-siklus-jakarta","tag-tutorial-react-js-siklus","tag-tutorial-react-js-siklus-pemula"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Lifecycle pada React JS - WebHozz Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Lifecycle pada React JS - WebHozz Blog\" \/>\n<meta property=\"og:description\" content=\"Siklus&nbsp;Komponen Setiap komponen dalam React memiliki siklus yang dapat kamu amati dan manipulasi selama tiga fase utamanya. Tiga fase tersebut adalah:&nbsp;Mounting,&nbsp;Updating, and&nbsp;Unmounting. Mounting Mounting&nbsp;berarti menempatkan\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/\" \/>\n<meta property=\"og:site_name\" content=\"WebHozz Blog\" \/>\n<meta property=\"article:published_time\" content=\"2023-09-16T05:47:39+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-10-23T05:16:35+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.webhozz.com\/blog\/wp-content\/uploads\/2019\/12\/logo-reactjs.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"750\" \/>\n\t<meta property=\"og:image:height\" content=\"400\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/lifecycle-pada-react-js\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/lifecycle-pada-react-js\\\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/#\\\/schema\\\/person\\\/c14789b713aefdff4189815a3655a941\"},\"headline\":\"Lifecycle pada React JS\",\"datePublished\":\"2023-09-16T05:47:39+00:00\",\"dateModified\":\"2023-10-23T05:16:35+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/lifecycle-pada-react-js\\\/\"},\"wordCount\":784,\"publisher\":{\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/lifecycle-pada-react-js\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/12\\\/logo-reactjs.jpg\",\"keywords\":[\"Belajar React JS Siklus\",\"Belajar React JS Siklus Pemula\",\"Kursus React JS Siklus Bandung\",\"Kursus React JS Siklus Jakarta\",\"Tutorial React JS Siklus\",\"Tutorial React JS Siklus Pemula\"],\"articleSection\":[\"Belajar React JS\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/lifecycle-pada-react-js\\\/\",\"url\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/lifecycle-pada-react-js\\\/\",\"name\":\"Lifecycle pada React JS - WebHozz Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/lifecycle-pada-react-js\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/lifecycle-pada-react-js\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/12\\\/logo-reactjs.jpg\",\"datePublished\":\"2023-09-16T05:47:39+00:00\",\"dateModified\":\"2023-10-23T05:16:35+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/lifecycle-pada-react-js\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/lifecycle-pada-react-js\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/lifecycle-pada-react-js\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/12\\\/logo-reactjs.jpg\",\"contentUrl\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/12\\\/logo-reactjs.jpg\",\"width\":750,\"height\":400},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/lifecycle-pada-react-js\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Lifecycle pada React JS\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/\",\"name\":\"WebHozz Blog\",\"description\":\"Kursus Web &amp; Android di Jakarta Bandung\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/#organization\",\"name\":\"WebHozz\",\"url\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/04\\\/logo-persegi.jpg\",\"contentUrl\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/04\\\/logo-persegi.jpg\",\"width\":442,\"height\":442,\"caption\":\"WebHozz\"},\"image\":{\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/#\\\/schema\\\/person\\\/c14789b713aefdff4189815a3655a941\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bff35e4083f3870e2f911c4437e788147d340f274268d361dd7e1cf20bebb156?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bff35e4083f3870e2f911c4437e788147d340f274268d361dd7e1cf20bebb156?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bff35e4083f3870e2f911c4437e788147d340f274268d361dd7e1cf20bebb156?s=96&d=mm&r=g\",\"caption\":\"admin\"},\"url\":\"https:\\\/\\\/www.webhozz.com\\\/blog\\\/author\\\/farry\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Lifecycle pada React JS - WebHozz Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/","og_locale":"en_US","og_type":"article","og_title":"Lifecycle pada React JS - WebHozz Blog","og_description":"Siklus&nbsp;Komponen Setiap komponen dalam React memiliki siklus yang dapat kamu amati dan manipulasi selama tiga fase utamanya. Tiga fase tersebut adalah:&nbsp;Mounting,&nbsp;Updating, and&nbsp;Unmounting. Mounting Mounting&nbsp;berarti menempatkan","og_url":"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/","og_site_name":"WebHozz Blog","article_published_time":"2023-09-16T05:47:39+00:00","article_modified_time":"2023-10-23T05:16:35+00:00","og_image":[{"width":750,"height":400,"url":"https:\/\/www.webhozz.com\/blog\/wp-content\/uploads\/2019\/12\/logo-reactjs.jpg","type":"image\/jpeg"}],"author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"admin","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/#article","isPartOf":{"@id":"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/"},"author":{"name":"admin","@id":"https:\/\/www.webhozz.com\/blog\/#\/schema\/person\/c14789b713aefdff4189815a3655a941"},"headline":"Lifecycle pada React JS","datePublished":"2023-09-16T05:47:39+00:00","dateModified":"2023-10-23T05:16:35+00:00","mainEntityOfPage":{"@id":"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/"},"wordCount":784,"publisher":{"@id":"https:\/\/www.webhozz.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/#primaryimage"},"thumbnailUrl":"https:\/\/www.webhozz.com\/blog\/wp-content\/uploads\/2019\/12\/logo-reactjs.jpg","keywords":["Belajar React JS Siklus","Belajar React JS Siklus Pemula","Kursus React JS Siklus Bandung","Kursus React JS Siklus Jakarta","Tutorial React JS Siklus","Tutorial React JS Siklus Pemula"],"articleSection":["Belajar React JS"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/","url":"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/","name":"Lifecycle pada React JS - WebHozz Blog","isPartOf":{"@id":"https:\/\/www.webhozz.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/#primaryimage"},"image":{"@id":"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/#primaryimage"},"thumbnailUrl":"https:\/\/www.webhozz.com\/blog\/wp-content\/uploads\/2019\/12\/logo-reactjs.jpg","datePublished":"2023-09-16T05:47:39+00:00","dateModified":"2023-10-23T05:16:35+00:00","breadcrumb":{"@id":"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/#primaryimage","url":"https:\/\/www.webhozz.com\/blog\/wp-content\/uploads\/2019\/12\/logo-reactjs.jpg","contentUrl":"https:\/\/www.webhozz.com\/blog\/wp-content\/uploads\/2019\/12\/logo-reactjs.jpg","width":750,"height":400},{"@type":"BreadcrumbList","@id":"https:\/\/www.webhozz.com\/blog\/lifecycle-pada-react-js\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.webhozz.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Lifecycle pada React JS"}]},{"@type":"WebSite","@id":"https:\/\/www.webhozz.com\/blog\/#website","url":"https:\/\/www.webhozz.com\/blog\/","name":"WebHozz Blog","description":"Kursus Web &amp; Android di Jakarta Bandung","publisher":{"@id":"https:\/\/www.webhozz.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.webhozz.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.webhozz.com\/blog\/#organization","name":"WebHozz","url":"https:\/\/www.webhozz.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webhozz.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.webhozz.com\/blog\/wp-content\/uploads\/2018\/04\/logo-persegi.jpg","contentUrl":"https:\/\/www.webhozz.com\/blog\/wp-content\/uploads\/2018\/04\/logo-persegi.jpg","width":442,"height":442,"caption":"WebHozz"},"image":{"@id":"https:\/\/www.webhozz.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.webhozz.com\/blog\/#\/schema\/person\/c14789b713aefdff4189815a3655a941","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/bff35e4083f3870e2f911c4437e788147d340f274268d361dd7e1cf20bebb156?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/bff35e4083f3870e2f911c4437e788147d340f274268d361dd7e1cf20bebb156?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/bff35e4083f3870e2f911c4437e788147d340f274268d361dd7e1cf20bebb156?s=96&d=mm&r=g","caption":"admin"},"url":"https:\/\/www.webhozz.com\/blog\/author\/farry\/"}]}},"_links":{"self":[{"href":"https:\/\/www.webhozz.com\/blog\/wp-json\/wp\/v2\/posts\/12907","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.webhozz.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.webhozz.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.webhozz.com\/blog\/wp-json\/wp\/v2\/users\/15"}],"replies":[{"embeddable":true,"href":"https:\/\/www.webhozz.com\/blog\/wp-json\/wp\/v2\/comments?post=12907"}],"version-history":[{"count":2,"href":"https:\/\/www.webhozz.com\/blog\/wp-json\/wp\/v2\/posts\/12907\/revisions"}],"predecessor-version":[{"id":12938,"href":"https:\/\/www.webhozz.com\/blog\/wp-json\/wp\/v2\/posts\/12907\/revisions\/12938"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.webhozz.com\/blog\/wp-json\/wp\/v2\/media\/10127"}],"wp:attachment":[{"href":"https:\/\/www.webhozz.com\/blog\/wp-json\/wp\/v2\/media?parent=12907"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.webhozz.com\/blog\/wp-json\/wp\/v2\/categories?post=12907"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.webhozz.com\/blog\/wp-json\/wp\/v2\/tags?post=12907"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}