{"id":45293,"date":"2023-11-19T09:11:49","date_gmt":"2023-11-19T05:41:49","guid":{"rendered":"https:\/\/rashed.ir\/?post_type=product&#038;p=45293"},"modified":"2026-06-03T18:20:33","modified_gmt":"2026-06-03T14:50:33","slug":"react-js-tutorial","status":"publish","type":"product","link":"https:\/\/rashed.ir\/blog\/product\/react-js-tutorial\/","title":{"rendered":"\u0622\u0645\u0648\u0632\u0634 React.js"},"content":{"rendered":"<p>\u0631\u06cc \u0627\u06a9\u062a (React.js) \u06cc\u06a9 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 (library) \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \u0628\u0631\u0627\u06cc \u0633\u0627\u062e\u062a \u0631\u0627\u0628\u0637 \u06a9\u0627\u0631\u0628\u0631\u06cc (UI) \u062a\u0639\u0627\u0645\u0644\u06cc \u0627\u0633\u062a. \u0627\u06cc\u0646 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u062a\u0648\u0633\u0637 Facebook \u00a0\u062a\u0648\u0633\u0639\u0647 \u06cc\u0627\u0641\u062a\u0647 \u0627\u0633\u062a \u0648 \u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0631\u0627\u0628\u0637 \u06a9\u0627\u0631\u0628\u0631\u06cc \u062f\u06cc\u0646\u0627\u0645\u06cc\u06a9 \u0648 \u062a\u0639\u0627\u0645\u0644\u06cc \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u0648\u0628 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f. \u0631\u06cc \u0627\u06a9\u062a \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u06cc\u06a9 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u0645\u062a\u0646 \u0628\u0627\u0632 (open-source) \u062f\u0631 \u062f\u0633\u062a\u0631\u0633 \u0627\u0633\u062a \u0648 \u062a\u0648\u0633\u0637 \u062c\u0627\u0645\u0639\u0647\u200c \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u06af\u0633\u062a\u0631\u062f\u0647 \u0627\u06cc \u062d\u0645\u0627\u06cc\u062a \u0645\u06cc \u0634\u0648\u062f. \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u06cc\u0646 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u062f\u0631 \u0633\u0627\u062e\u062a \u0648 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628 \u0633\u0627\u06cc\u062a \u0647\u0627 \u0648 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u062a\u06a9 \u0635\u0641\u062d\u0647\u200c\u0627\u06cc (Single Page Applications &#8211; SPAs) \u00a0\u0628\u0633\u06cc\u0627\u0631 \u0645\u0641\u06cc\u062f \u0627\u0633\u062a.<\/p>\n<h2>\u0648\u06cc\u0698\u06af\u06cc \u0647\u0627\u06cc React<\/h2>\n<p>\u0645\u0647\u0645 \u062a\u0631\u06cc\u0646 \u0648\u06cc\u0698\u06af\u06cc \u0647\u0627\u06cc React \u0639\u0628\u0627\u0631\u062a\u0646\u062f \u0627\u0632:<\/p>\n<ul>\n<li><strong>\u06a9\u0627\u0645\u067e\u0648\u0646\u0646\u062a \u0647\u0627: <\/strong>\u06a9\u0627\u0645\u067e\u0648\u0646\u0646\u062a \u0647\u0627 \u0627\u062c\u0632\u0627\u06cc \u0642\u0627\u0628\u0644 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u062c\u0632\u0627 \u0647\u0633\u062a\u0646\u062f \u06a9\u0647 \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u062f\u0627\u0631\u0627\u06cc \u0648\u06cc\u0698\u06af\u06cc \u0647\u0627 (props) \u0648 \u0648\u0636\u0639\u06cc\u062a (state) \u0628\u0627\u0634\u0646\u062f. \u0627\u06cc\u0646 \u0633\u0627\u062e\u062a\u0627\u0631 \u0627\u0645\u06a9\u0627\u0646 \u0633\u0627\u062e\u062a \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u0642\u0627\u0628\u0644 \u062a\u0648\u0633\u0639\u0647 \u0648 \u0646\u06af\u0647\u062f\u0627\u0631\u06cc \u0631\u0627 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc \u06a9\u0646\u062f.<\/li>\n<li><strong>\u0648\u0636\u0639\u06cc\u062a<\/strong><strong>(State) <\/strong><strong>: <\/strong>React \u0627\u0632 \u0648\u0636\u0639\u06cc\u062a \u0628\u0631\u0627\u06cc \u0630\u062e\u06cc\u0631\u0647 \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u062f\u06cc\u0646\u0627\u0645\u06cc\u06a9 \u062f\u0631 \u06cc\u06a9 \u06a9\u0627\u0645\u067e\u0648\u0646\u0646\u062a \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f. \u062a\u063a\u06cc\u06cc\u0631 \u0648\u0636\u0639\u06cc\u062a \u0628\u0627\u0639\u062b \u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc \u062a\u062c\u0632\u06cc\u0647 \u0648 \u062a\u062d\u0644\u06cc\u0644 (re-render) \u06a9\u0627\u0645\u067e\u0648\u0646\u0646\u062a \u0645\u06cc \u0634\u0648\u062f.<\/li>\n<li><strong>Virtual DOM<\/strong><strong>: <\/strong>React \u0627\u0632 \u0645\u0641\u0647\u0648\u0645 DOM \u0645\u062c\u0627\u0632\u06cc (Virtual DOM) \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f \u062a\u0627 \u0628\u0647\u06cc\u0646\u0647 \u062a\u0631\u06cc\u0646 \u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc \u0631\u0627 \u0627\u0646\u062c\u0627\u0645 \u062f\u0647\u062f. \u062f\u0631 \u0647\u0646\u06af\u0627\u0645 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u062f\u0631 \u0648\u0636\u0639\u06cc\u062a \u06cc\u0627 \u0648\u0631\u0648\u062f\u06cc\u060cReact \u06cc\u06a9 \u0646\u0633\u062e\u0647 \u0645\u062c\u0627\u0632\u06cc \u0627\u0632 DOM \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0631\u062f\u0647 \u0648 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u0631\u0627 \u062f\u0631 \u0622\u0646 \u0627\u0639\u0645\u0627\u0644 \u06a9\u0631\u062f\u0647\u060c \u0633\u067e\u0633 \u0628\u0627 DOM \u0627\u0635\u0644\u06cc \u0645\u0642\u0627\u06cc\u0633\u0647 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u062a\u0646\u0647\u0627 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u0644\u0627\u0632\u0645 \u0631\u0627 \u0628\u0647 DOM \u0627\u0639\u0645\u0627\u0644 \u0645\u06cc \u06a9\u0646\u062f. \u0627\u06cc\u0646 \u0639\u0645\u0644\u06cc\u0627\u062a \u0628\u0627\u0639\u062b \u0628\u0647\u06cc\u0646\u0647 \u0633\u0627\u0632\u06cc \u0639\u0645\u0644\u06a9\u0631\u062f \u0628\u0631\u0646\u0627\u0645\u0647 \u0645\u06cc \u0634\u0648\u062f.<\/li>\n<li><strong>\u06cc\u06a9\u067e\u0627\u0631\u0686\u06af\u06cc \u0628\u0627 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a:<\/strong> React \u0628\u0647 \u0637\u0648\u0631 \u0645\u0633\u062a\u0642\u06cc\u0645 \u0628\u0627 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \u06a9\u0627\u0631 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0627\u0632 JSX (\u06cc\u06a9 \u0646\u0648\u0639 \u0646\u062d\u0648\u0647 \u0646\u0648\u0634\u062a\u0646 \u06a9\u062f HTML \u062f\u0631 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a) \u0628\u0631\u0627\u06cc \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0627\u0645\u067e\u0648\u0646\u0646\u062a \u0647\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f.<\/li>\n<\/ul>\n<h2>\u0628\u0627\u0632\u0627\u0631 \u06a9\u0627\u0631 React.js<\/h2>\n<p>\u0631\u06cc \u0627\u06a9\u062a \u06cc\u06a9 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \u0628\u0633\u06cc\u0627\u0631 \u0645\u062d\u0628\u0648\u0628 \u0628\u0631\u0627\u06cc \u0633\u0627\u062e\u062a \u0631\u0627\u0628\u0637 \u06a9\u0627\u0631\u0628\u0631\u06cc \u062a\u0639\u0627\u0645\u0644\u06cc (UI) \u0627\u0633\u062a \u0648 \u0628\u0631\u0627\u06cc \u0627\u0641\u0631\u0627\u062f \u0645\u062e\u062a\u0644\u0641 \u062f\u0631 \u0639\u0631\u0635\u0647 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628 \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0645\u0641\u06cc\u062f \u0628\u0627\u0634\u062f. \u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc React.js \u0634\u0645\u0627 \u0631\u0627 \u062f\u0631 \u06cc\u0627\u0641\u062a\u0646 \u0645\u0634\u0627\u063a\u0644\u06cc \u062f\u0631 \u062d\u0648\u0632\u0647 \u0647\u0627\u06cc \u0632\u06cc\u0631 \u06a9\u0645\u06a9 \u062e\u0648\u0627\u0647\u062f \u06a9\u0631\u062f:<\/p>\n<ul>\n<li>\u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a<\/li>\n<li>\u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0648\u0628<\/li>\n<li>\u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0641\u0631\u0627\u0646\u062a \u0627\u0646\u062f<\/li>\n<li>\u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0641\u0648\u0644 \u0627\u0633\u062a\u06a9<\/li>\n<li>\u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0645\u0648\u0628\u0627\u06cc\u0644<\/li>\n<li>\u0627\u0641\u0631\u0627\u062f\u06cc \u06a9\u0647 \u0628\u0647 \u062f\u0646\u0628\u0627\u0644 \u0627\u06cc\u062c\u0627\u062f \u067e\u0631\u0648\u0698\u0647 \u0647\u0627\u06cc \u0634\u062e\u0635\u06cc \u06cc\u0627 \u0627\u0633\u062a\u0627\u0631\u062a\u0627\u067e\u06cc \u0647\u0633\u062a\u0646\u062f<\/li>\n<\/ul>\n<h2>\u067e\u06cc\u0634 \u0646\u06cc\u0627\u0632\u0647\u0627\u06cc \u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc React.js<\/h2>\n<p>\u0628\u0631\u0627\u06cc \u06cc\u0627\u062f\u06af\u06cc\u0631\u06cc React.js\u060c \u0628\u0631\u062e\u06cc \u0627\u0632 \u067e\u06cc\u0634 \u0646\u06cc\u0627\u0632 \u0647\u0627 \u0648 \u0645\u0647\u0627\u0631\u062a \u0647\u0627\u06cc \u0645\u0641\u06cc\u062f \u0639\u0628\u0627\u0631\u062a\u0646\u062f \u0627\u0632:<\/p>\n<ul>\n<li>\u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 HTML \u0648 CSS<\/li>\n<li>\u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u0627\u0632 \u0627\u06cc\u0646 \u06a9\u0647 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0635\u0641\u062d\u0627\u062a HTML \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u0648 \u0633\u0641\u0627\u0631\u0634\u06cc \u0633\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f<\/li>\n<li>\u062a\u0648\u0627\u0646\u0627\u06cc\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 CSS \u0628\u0631\u0627\u06cc \u0637\u0631\u0627\u062d\u06cc \u0648 \u0633\u0628\u06a9 \u0628\u0646\u062f\u06cc \u0648\u0628 \u0633\u0627\u06cc\u062a \u0647\u0627<\/li>\n<li>\u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a<\/li>\n<li>\u062a\u0633\u0644\u0637 \u0628\u0631 \u0645\u0641\u0627\u0647\u06cc\u0645 \u0627\u0648\u0644\u06cc\u0647 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a.<\/li>\n<li>\u062a\u0648\u0627\u0646\u0627\u06cc\u06cc \u06a9\u0627\u0631 \u0628\u0627 \u0645\u062a\u063a\u06cc\u0631 \u0647\u0627\u060c \u062a\u0648\u0627\u0628\u0639\u060c \u0634\u06cc\u0621 \u06af\u0631\u0627\u06cc\u06cc \u0648 \u0631\u0648\u06cc\u062f\u0627\u062f \u0647\u0627<\/li>\n<li>\u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0645\u0641\u0627\u0647\u06cc\u0645 \u0628\u0646\u06cc\u0627\u062f\u06cc DOM<\/li>\n<li>\u062f\u0631\u06a9 \u0646\u062d\u0648\u0647 \u0639\u0645\u0644\u06a9\u0631\u062f DOM \u0648 \u062a\u0639\u0627\u0645\u0644 \u0628\u0627 \u0627\u0644\u0645\u0627\u0646 \u0647\u0627 \u062f\u0631 \u0635\u0641\u062d\u0647<\/li>\n<li>\u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0645\u0641\u0647\u0648\u0645 MVC (Model-View-Controller) \u06cc\u0627 MVVM (Model-View-ViewModel)<\/li>\n<li>\u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0627\u0628\u0632\u0627\u0631\u0647\u0627 \u0648 \u0645\u0641\u0627\u0647\u06cc\u0645 Git \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0646\u0633\u062e\u0647 \u06a9\u062f<\/li>\n<li>\u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0645\u0641\u0647\u0648\u0645 \u0645\u0633\u06cc\u0631 \u06cc\u0627\u0628\u06cc \u0648 \u062f\u0631\u06a9 \u0627\u0647\u0645\u06cc\u062a \u0648 \u0646\u062d\u0648\u0647 \u0645\u0633\u06cc\u0631 \u06cc\u0627\u0628\u06cc \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u0648\u0627\u062d\u062f \u0635\u0641\u062d\u0647 (SPA)<\/li>\n<li>\u0645\u0641\u0627\u0647\u06cc\u0645 \u067e\u0627\u06cc\u0647 HTTP \u0648 RESTful API<\/li>\n<li>\u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0646\u062d\u0648\u0647 \u0627\u0631\u062a\u0628\u0627\u0637 \u0628\u0627 \u0633\u0631\u0648\u06cc\u0633 \u0647\u0627\u06cc \u0648\u0628 \u0648 \u0627\u0631\u0633\u0627\u0644 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0647\u0627\u06cc HTTP<\/li>\n<li>\u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0645\u0641\u0627\u0647\u06cc\u0645 \u0627\u0648\u0644\u06cc\u0647 \u062a\u0648\u0633\u0639\u0647 \u0648\u0628 \u0648 \u0622\u0645\u0648\u0632\u0634 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u0628\u0632\u0627\u0631 \u0647\u0627\u06cc\u06cc \u0645\u0627\u0646\u0646\u062f npm \u06cc\u0627 yarn \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u067e\u0631\u0648\u0698\u0647<\/li>\n<\/ul>\n<p><img decoding=\"async\" src=\"https:\/\/rashed.ir\/wp-content\/uploads\/2023\/11\/\u0622\u0645\u0648\u0632\u0634-react.js.jpg\" alt=\"\" title=\"\"><\/p>\n<h2>\u0633\u0631\u0641\u0635\u0644 \u0647\u0627\u06cc \u062f\u0648\u0631\u0647 React.js \u0631\u0627\u0634\u062f<\/h2>\n<p>\u062f\u0631 \u062f\u0648\u0631\u0647 React.js \u0631\u0627\u0634\u062f \u0645\u0634\u0647\u062f\u060c \u0622\u0645\u0648\u0632\u0634 \u0627\u0632 \u0645\u0628\u0627\u062d\u062b \u067e\u0627\u06cc\u0647 \u0634\u0631\u0648\u0639 \u0634\u062f\u0647 \u0648 \u0628\u0647 \u062a\u062f\u0631\u06cc\u062c \u0628\u0647 \u0645\u0648\u0636\u0648\u0639\u0627\u062a \u067e\u06cc\u0634\u0631\u0641\u062a\u0647 \u062a\u0631 \u0645\u06cc \u0631\u0633\u062f. \u062f\u0631 \u0632\u06cc\u0631\u060c \u0644\u06cc\u0633\u062a \u0633\u0631\u0641\u0635\u0644 \u0647\u0627\u06cc \u062c\u0627\u0645\u0639 \u0645\u0648\u0633\u0633\u0647 \u0622\u0648\u0631\u062f\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a:<\/p>\n<ul>\n<li>\u0645\u0639\u0631\u0641\u06cc React\u0648 \u0645\u0641\u0627\u0647\u06cc\u0645 \u0627\u0648\u0644\u06cc\u0647<\/li>\n<li>JSX \u0648 \u0646\u062d\u0648\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0622\u0646<\/li>\n<li>\u0627\u062c\u0632\u0627\u06cc React \u0648 \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0627\u0645\u067e\u0648\u0646\u0646\u062a \u0647\u0627\u060c \u0648\u06cc\u0698\u06af\u06cc \u0647\u0627 \u0648 \u0648\u0636\u0639\u06cc\u062a<\/li>\n<li>\u0631\u0648\u06cc\u062f\u0627\u062f \u0647\u0627 \u0648 \u062f\u0633\u062a\u0648\u0631\u0627\u0644\u0639\u0645\u0644 \u0647\u0627 (Events and Handling)\u060c \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0631\u0648\u06cc\u062f\u0627\u062f \u0647\u0627\u060c \u062f\u0633\u062a\u0648\u0631\u0627\u0644\u0639\u0645\u0644 \u0647\u0627 \u0648 \u0627\u0639\u0645\u0627\u0644 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a<\/li>\n<li>\u0645\u0631\u0627\u062d\u0644 \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0686\u0631\u062e\u0647 \u0639\u0645\u0631 (Lifecycle) \u06a9\u0627\u0645\u067e\u0648\u0646\u0646\u062a \u0647\u0627<\/li>\n<li>\u0645\u062f\u06cc\u0631\u06cc\u062a \u0641\u0631\u0645\u200c\u0647\u0627 (Forms)\u060c \u0646\u062d\u0648\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0641\u0631\u0645\u200c\u0647\u0627 \u062f\u0631 React\u0648 \u06a9\u0646\u062a\u0631\u0644 \u0648\u0636\u0639\u06cc\u062a \u0641\u0631\u0645<\/li>\n<li>\u0645\u0633\u0627\u0626\u0644 \u0645\u0631\u062a\u0628\u0637 \u0628\u0627 \u0639\u0645\u0644\u06a9\u0631\u062f (Performance) \u0648 \u0628\u0647\u06cc\u0646\u0647 \u0633\u0627\u0632\u06cc \u0639\u0645\u0644\u06a9\u0631\u062f \u0628\u0627memo \u0648 PureComponent<\/li>\n<li>\u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Lazy Loading \u0628\u0631\u0627\u06cc \u0628\u0627\u0631 \u06af\u0630\u0627\u0631\u06cc \u062a\u0627\u062e\u06cc\u0631\u06cc<\/li>\n<li>\u0645\u0633\u0627\u0626\u0644 \u0645\u0631\u062a\u0628\u0637 \u0628\u0627 \u0645\u0633\u06cc\u0631 \u06cc\u0627\u0628\u06cc (Routing) \u0648 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0645\u0633\u06cc\u0631 \u06cc\u0627\u0628\u06cc \u0628\u0647 \u0648\u0633\u06cc\u0644\u0647 React Router<\/li>\n<li>\u0645\u062f\u06cc\u0631\u06cc\u062a \u0648\u0636\u0639\u06cc\u062a \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Redux<\/li>\n<li>\u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 API \u0647\u0627\u060c \u0627\u0631\u062a\u0628\u0627\u0637 \u0628\u0627 \u0633\u0631\u0648\u06cc\u0633 \u0647\u0627\u06cc \u0648\u0628 \u0648 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0647\u0627\u06cc HTTP \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u0647\u0627\u06cc\u06cc \u0645\u0627\u0646\u0646\u062f Axios<\/li>\n<li>\u0646\u062d\u0648\u0647 \u0646\u0648\u0634\u062a\u0646 \u062a\u0633\u062a \u0647\u0627\u06cc \u0648\u0627\u062d\u062f (Testing) \u0628\u0631\u0627\u06cc \u06a9\u0627\u0645\u067e\u0648\u0646\u0646\u062a \u0647\u0627 \u0648 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u0628\u0632\u0627\u0631\u0647\u0627\u06cc \u062a\u0633\u062a \u0645\u0627\u0646\u0646\u062f Jest<\/li>\n<li>\u062a\u0648\u0633\u0639\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u0648\u0627\u0642\u0639\u06cc (Real-world Applications)\u0648 \u0633\u0627\u062e\u062a \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc React \u0628\u0632\u0631\u06af\u062a\u0631<\/li>\n<li>\u0622\u0645\u0648\u0632\u0634 \u0633\u0627\u06cc\u0631 \u0645\u0641\u0627\u0647\u06cc\u0645 \u067e\u06cc\u0634\u0631\u0641\u062a\u0647 \u0648 \u0627\u0646\u062c\u0627\u0645 \u06cc\u06a9 \u067e\u0631\u0648\u0698\u0647 \u0639\u0645\u0644\u06cc<\/li>\n<\/ul>\n\t\t<div data-elementor-type=\"section\" data-elementor-id=\"34042\" class=\"elementor elementor-34042\" data-elementor-post-type=\"elementor_library\">\n\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-88e63a7 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"88e63a7\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-39d10af\" data-id=\"39d10af\" data-element_type=\"column\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t<div class=\"elementor-background-overlay\"><\/div>\n\t\t\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-fe88f29 elementor-section-full_width elementor-section-height-default elementor-section-height-default\" data-id=\"fe88f29\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-ee4eae5 animated-slow image-display-none-sidebar elementor-invisible\" data-id=\"ee4eae5\" data-element_type=\"column\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;animation&quot;:&quot;fadeIn&quot;,&quot;animation_delay&quot;:500}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-95494b0 elementor-widget elementor-widget-image\" data-id=\"95494b0\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"440\" height=\"294\" src=\"https:\/\/rashed.ir\/blog\/wp-content\/uploads\/2023\/01\/ezgif.com-gif-maker.webp\" class=\"attachment-full size-full wp-image-34065\" alt=\"\" srcset=\"https:\/\/rashed.ir\/blog\/wp-content\/uploads\/2023\/01\/ezgif.com-gif-maker.webp 440w, https:\/\/rashed.ir\/blog\/wp-content\/uploads\/2023\/01\/ezgif.com-gif-maker-300x200.webp 300w\" sizes=\"(max-width: 440px) 100vw, 440px\" title=\"\">\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-5865644 cta-box\" data-id=\"5865644\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-40b2b51 animated-slow elementor-invisible elementor-widget elementor-widget-heading\" data-id=\"40b2b51\" data-element_type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;fadeIn&quot;,&quot;_animation_delay&quot;:700}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">\u0645\u0634\u0627\u0648\u0631\u0647 \u0631\u0627\u06cc\u06af\u0627\u0646 \u0628\u0627 \u06a9\u0627\u0631\u0634\u0646\u0627\u0633\u0627\u0646<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2ae6826 elementor-widget elementor-widget-text-editor\" data-id=\"2ae6826\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><strong>\u0627\u06af\u0631 \u062a\u0645\u0627\u06cc\u0644 \u0628\u0647 \u062f\u0631\u06cc\u0627\u0641\u062a \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0628\u06cc\u0634\u062a\u0631\u06cc \u062f\u0631 \u0645\u0648\u0631\u062f \u062f\u0648\u0631\u0647\u200c\u0647\u0627\u06cc \u0622\u0645\u0648\u0632\u0634\u06cc \u06cc\u0627 \u062a\u062e\u0635\u0635 \u0627\u0634\u062a\u063a\u0627\u0644 \u0648 \u0645\u0647\u0627\u062c\u0631\u062a \u062f\u0627\u0631\u06cc\u062f \u0645\u06cc\u062a\u0648\u0627\u0646\u06cc\u062f \u0627\u0632 \u0631\u0627\u0647 \u0647\u0627\u06cc \u0627\u0631\u062a\u0628\u0627\u0637\u06cc \u0632\u06cc\u0631 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0646\u0645\u0627\u06cc\u06cc\u062f.<\/strong><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5559667 elementor-icon-list--layout-inline elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"5559667\" data-element_type=\"widget\" data-widget_type=\"icon-list.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items elementor-inline-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item elementor-inline-item\">\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"tel:05138432282\" target=\"_blank\" rel=\"nofollow\">\n\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\">\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"fas fa-phone\"><\/i>\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">\u0634\u0645\u0627\u0631\u0647 \u062a\u0645\u0627\u0633 : 38432282<\/span>\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5995f84 elementor-widget elementor-widget-shortcode\" data-id=\"5995f84\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><script>\nvar gform;gform||(document.addEventListener(\"gform_main_scripts_loaded\",function(){gform.scriptsLoaded=!0}),document.addEventListener(\"gform\/theme\/scripts_loaded\",function(){gform.themeScriptsLoaded=!0}),window.addEventListener(\"DOMContentLoaded\",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,themeScriptsLoaded:!1,isFormEditor:()=>\"function\"==typeof InitializeEditor,callIfLoaded:function(o){return!(!gform.domLoaded||!gform.scriptsLoaded||!gform.themeScriptsLoaded&&!gform.isFormEditor()||(gform.isFormEditor()&&console.warn(\"The use of gform.initializeOnLoaded() is deprecated in the form editor context and will be removed in Gravity Forms 3.1.\"),o(),0))},initializeOnLoaded:function(o){gform.callIfLoaded(o)||(document.addEventListener(\"gform_main_scripts_loaded\",()=>{gform.scriptsLoaded=!0,gform.callIfLoaded(o)}),document.addEventListener(\"gform\/theme\/scripts_loaded\",()=>{gform.themeScriptsLoaded=!0,gform.callIfLoaded(o)}),window.addEventListener(\"DOMContentLoaded\",()=>{gform.domLoaded=!0,gform.callIfLoaded(o)}))},hooks:{action:{},filter:{}},addAction:function(o,r,e,t){gform.addHook(\"action\",o,r,e,t)},addFilter:function(o,r,e,t){gform.addHook(\"filter\",o,r,e,t)},doAction:function(o){gform.doHook(\"action\",o,arguments)},applyFilters:function(o){return gform.doHook(\"filter\",o,arguments)},removeAction:function(o,r){gform.removeHook(\"action\",o,r)},removeFilter:function(o,r,e){gform.removeHook(\"filter\",o,r,e)},addHook:function(o,r,e,t,n){null==gform.hooks[o][r]&&(gform.hooks[o][r]=[]);var d=gform.hooks[o][r];null==n&&(n=r+\"_\"+d.length),gform.hooks[o][r].push({tag:n,callable:e,priority:t=null==t?10:t})},doHook:function(r,o,e){var t;if(e=Array.prototype.slice.call(e,1),null!=gform.hooks[r][o]&&((o=gform.hooks[r][o]).sort(function(o,r){return o.priority-r.priority}),o.forEach(function(o){\"function\"!=typeof(t=o.callable)&&(t=window[t]),\"action\"==r?t.apply(null,e):e[0]=t.apply(null,e)})),\"filter\"==r)return e[0]},removeHook:function(o,r,t,n){var e;null!=gform.hooks[o][r]&&(e=(e=gform.hooks[o][r]).filter(function(o,r,e){return!!(null!=n&&n!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][r]=e)}});\n<\/script>\n\n                <div class='gf_browser_gecko gform_wrapper gravity-theme gform-theme--no-framework' data-form-theme='gravity-theme' data-form-index='0' id='gform_wrapper_4' ><div id='gf_4' class='gform_anchor' tabindex='-1'><\/div>\n                        <div class='gform_heading'>\n                            <p class='gform_description'><\/p>\n                        <\/div><form method='post' enctype='multipart\/form-data' target='gform_ajax_frame_4' id='gform_4'  action='\/blog\/wp-json\/wp\/v2\/product\/45293#gf_4' data-formid='4' novalidate>\n                        <div class='gform-body gform_body'><div id='gform_fields_4' class='gform_fields top_label form_sublabel_below description_below validation_below'><div id=\"field_4_2\" class=\"gfield gfield--type-text gfield--width-half field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_4_2'>\u0646\u0627\u0645 \u0648 \u0646\u0627\u0645 \u062e\u0627\u0646\u0648\u0627\u062f\u06af\u06cc<\/label><div class='ginput_container ginput_container_text'><input name='input_2' id='input_4_2' type='text' value='' class='large'      aria-invalid=\"false\"   \/><\/div><\/div><div id=\"field_4_1\" class=\"gfield gfield--type-text gfield--width-half gfield_contains_required field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_4_1'>\u0634\u0645\u0627\u0631\u0647 \u0647\u0645\u0631\u0627\u0647<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(\u0636\u0631\u0648\u0631\u06cc)<\/span><\/span><\/label><div class='ginput_container ginput_container_text'><input name='input_1' id='input_4_1' type='text' value='' class='large'    placeholder='*******0912' aria-required=\"true\" aria-invalid=\"false\"   \/><\/div><\/div><div id=\"field_4_6\" class=\"gfield gfield--type-hidden gfield--width-full gform_hidden field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><div class='ginput_container ginput_container_text'><input name='input_6' id='input_4_6' type='hidden' class='gform_hidden'  aria-invalid=\"false\" value='' \/><\/div><\/div><div id=\"field_4_5\" class=\"gfield gfield--type-hidden gfield--width-full gform_hidden field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><div class='ginput_container ginput_container_text'><input name='input_5' id='input_4_5' type='hidden' class='gform_hidden'  aria-invalid=\"false\" value='https:\/\/rashed.ir\/blog\/wp-json\/wp\/v2\/product\/45293' \/><\/div><\/div><div id=\"field_4_4\" class=\"gfield gfield--type-hidden gfield--width-full gform_hidden field_sublabel_below gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><div class='ginput_container ginput_container_text'><input name='input_4' id='input_4_4' type='hidden' class='gform_hidden'  aria-invalid=\"false\" value='' \/><\/div><\/div><\/div><\/div>\n        <div class='gform-footer gform_footer top_label'> <input type='submit' id='gform_submit_button_4' class='gform_button button gform-button--width-full' onclick='gform.submission.handleButtonClick(this);' data-submission-type='submit' value='\u0627\u0631\u0633\u0627\u0644'  \/> <input type='hidden' name='gform_ajax' value='form_id=4&amp;title=&amp;description=1&amp;tabindex=0&amp;theme=gravity-theme&amp;styles=[]&amp;hash=8f7da77b26f2265f9323792edd0b6fe9' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submission_method' data-js='gform_submission_method_4' value='iframe' \/>\n            <input type='hidden' class='gform_hidden' name='gform_theme' data-js='gform_theme_4' id='gform_theme_4' value='gravity-theme' \/>\n            <input type='hidden' class='gform_hidden' name='gform_style_settings' data-js='gform_style_settings_4' id='gform_style_settings_4' value='[]' \/>\n            <input type='hidden' class='gform_hidden' name='is_submit_4' value='1' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submit' value='4' \/>\n            \n            <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' \/>\n            <input type='hidden' class='gform_hidden' name='state_4' value='WyJbXSIsImI5Mjc3ODI2YzJjNmJjY2Q2NjYzMTljNjc3YzFjNGY3Il0=' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_target_page_number_4' id='gform_target_page_number_4' value='0' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_source_page_number_4' id='gform_source_page_number_4' value='1' \/>\n            <input type='hidden' name='gform_field_values' value='' \/>\n            \n        <\/div>\n                        <p style=\"display: none !important;\" class=\"akismet-fields-container\" data-prefix=\"ak_\"><label>&#916;<textarea name=\"ak_hp_textarea\" cols=\"45\" rows=\"8\" maxlength=\"100\"><\/textarea><\/label><input type=\"hidden\" id=\"ak_js_1\" name=\"ak_js\" value=\"116\"\/><script>document.getElementById( \"ak_js_1\" ).setAttribute( \"value\", ( new Date() ).getTime() );<\/script><\/p><\/form>\n                        <\/div>\n\t\t                <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_4' id='gform_ajax_frame_4' title='\u0627\u06cc\u0646 \u0622\u06cc \u0641\u0631\u06cc\u0645 \u062d\u0627\u0648\u06cc \u0645\u0646\u0637\u0642 \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0628\u0631\u0627\u06cc \u067e\u0631\u062f\u0627\u0632\u0634 \u0641\u0631\u0645 \u0647\u0627\u06cc \u06af\u0631\u0648\u06cc\u062a\u06cc \u0645\u0628\u062a\u0646\u06cc \u0628\u0631 \u0627\u06cc\u062c\u06a9\u0633 \u0627\u0633\u062a.'><\/iframe>\n\t\t                <script>\ngform.initializeOnLoaded( function() {gformInitSpinner( 4, 'https:\/\/rashed.ir\/blog\/wp-content\/plugins\/gravityforms\/images\/spinner.svg', true );jQuery('#gform_ajax_frame_4').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_4');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_4').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_4').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_4').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_4').removeClass('gform_validation_error');}setTimeout( function() { \/* delay the scroll by 50 milliseconds to fix a bug in chrome *\/ jQuery(document).scrollTop(jQuery('#gform_wrapper_4').offset().top - mt); }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_4').val();gformInitSpinner( 4, 'https:\/\/rashed.ir\/blog\/wp-content\/plugins\/gravityforms\/images\/spinner.svg', true );jQuery(document).trigger('gform_page_loaded', [4, current_page]);window['gf_submitting_4'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}jQuery('#gform_wrapper_4').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_4').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [4]);window['gf_submitting_4'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_4').text());}else{jQuery('#gform_4').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger(\"gform_pre_post_render\", [{ formId: \"4\", currentPage: \"current_page\", abort: function() { this.preventDefault(); } }]);                if (event && event.defaultPrevented) {                return;         }        const gformWrapperDiv = document.getElementById( \"gform_wrapper_4\" );        if ( gformWrapperDiv ) {            const visibilitySpan = document.createElement( \"span\" );            visibilitySpan.id = \"gform_visibility_test_4\";            gformWrapperDiv.insertAdjacentElement( \"afterend\", visibilitySpan );        }        const visibilityTestDiv = document.getElementById( \"gform_visibility_test_4\" );        let postRenderFired = false;                function triggerPostRender() {            if ( postRenderFired ) {                return;            }            postRenderFired = true;            gform.core.triggerPostRenderEvents( 4, current_page );            if ( visibilityTestDiv ) {                visibilityTestDiv.parentNode.removeChild( visibilityTestDiv );            }        }        function debounce( func, wait, immediate ) {            var timeout;            return function() {                var context = this, args = arguments;                var later = function() {                    timeout = null;                    if ( !immediate ) func.apply( context, args );                };                var callNow = immediate && !timeout;                clearTimeout( timeout );                timeout = setTimeout( later, wait );                if ( callNow ) func.apply( context, args );            };        }        const debouncedTriggerPostRender = debounce( function() {            triggerPostRender();        }, 200 );        if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) {            const observer = new MutationObserver( ( mutations ) => {                mutations.forEach( ( mutation ) => {                    if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) {                        debouncedTriggerPostRender();                        observer.disconnect();                    }                });            });            observer.observe( document.body, {                attributes: true,                childList: false,                subtree: true,                attributeFilter: [ 'style', 'class' ],            });        } else {            triggerPostRender();        }    } );} );\n<\/script>\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t\n<h2>\u0633\u062e\u0646 \u067e\u0627\u06cc\u0627\u0646\u06cc<\/h2>\n<p>\u0645\u0648\u0633\u0633\u0647 \u0631\u0627\u0634\u062f \u0645\u0634\u0647\u062f \u0628\u0627 \u0648\u062c\u0648\u062f \u0645\u0631\u0628\u06cc\u0627\u0646 \u0645\u0627\u0647\u0631 \u0648 \u0645\u062a\u062e\u0635\u0635 \u062f\u0631 \u0632\u0645\u06cc\u0646\u0647 \u0622\u0645\u0648\u0632\u0634 React.js\u060c \u0627\u0631\u0627\u0626\u0647 \u0645\u0646\u0627\u0628\u0639 \u0622\u0645\u0648\u0632\u0634\u06cc \u062c\u0627\u0645\u0639 \u06a9\u0647 \u062a\u0645\u0627\u0645\u06cc \u062c\u0646\u0628\u0647 \u0647\u0627\u06cc \u0631\u06cc \u0627\u06a9\u062a \u0631\u0627 \u067e\u0648\u0634\u0634 \u062f\u0647\u062f \u0648 \u0622\u0645\u0648\u0632\u0634 \u0647\u0627\u06cc \u0645\u0631\u062d\u0644\u0647 \u0628\u0647 \u0645\u0631\u062d\u0644\u0647 \u0647\u0645\u0631\u0627\u0647 \u0628\u0627 \u067e\u0631\u0648\u0698\u0647 \u0647\u0627\u06cc \u0639\u0645\u0644\u06cc\u060c \u06cc\u06a9\u06cc \u0627\u0632 \u0628\u0627 \u06a9\u06cc\u0641\u06cc\u062a \u062a\u0631\u06cc\u0646 \u0645\u0648\u0633\u0633\u0627\u062a \u0622\u0645\u0648\u0632\u0634 \u0631\u06cc \u0627\u06a9\u062a \u062f\u0631 \u0633\u0637\u062d \u06a9\u0634\u0648\u0631 \u0645\u06cc \u0628\u0627\u0634\u062f. \u062f\u0631 \u0627\u06cc\u0646 \u06a9\u0644\u0627\u0633 \u0647\u0627\u060c \u067e\u0631\u0648\u0698\u0647 \u0647\u0627\u06cc \u0639\u0645\u0644\u06cc \u0648 \u062a\u0645\u0631\u06cc\u0646\u0627\u062a \u0628\u0633\u06cc\u0627\u0631\u06cc \u0628\u0627 \u0641\u0631\u0627\u06af\u06cc\u0631\u0627\u0646 \u06a9\u0627\u0631 \u0645\u06cc \u0634\u0648\u062f \u062a\u0627 \u0622\u0646 \u0647\u0627 \u0631\u0627 \u0622\u0645\u0627\u062f\u0647 \u0648\u0631\u0648\u062f \u0628\u0647 \u0628\u0627\u0632\u0627\u0631 \u06a9\u0627\u0631 \u06a9\u0646\u062f. \u0647\u0632\u06cc\u0646\u0647 \u062f\u0648\u0631\u0647 \u0647\u0627 \u0646\u06cc\u0632 \u0628\u0627 \u062a\u0648\u062c\u0647 \u0628\u0647 \u06a9\u06cc\u0641\u06cc\u062a \u0648 \u062d\u062c\u0645 \u0645\u0637\u0627\u0644\u0628 \u0628\u0633\u06cc\u0627\u0631 \u067e\u0627\u06cc\u06cc\u0646 \u0647\u0633\u062a\u0646\u062f. \u0627\u06cc\u0646 \u062f\u0648\u0631\u0647 \u0647\u0627 \u0628\u0647 \u0635\u0648\u0631\u062a \u0639\u0645\u0648\u0645\u06cc\u060c \u062e\u0635\u0648\u0635\u06cc\u060c \u062d\u0636\u0648\u0631\u06cc \u0648 \u0622\u0646\u0644\u0627\u06cc\u0646 \u0628\u0631\u0627\u06cc \u067e\u0627\u0633\u062e\u06af\u0648\u06cc\u06cc \u0628\u0647 \u0646\u06cc\u0627\u0632\u0647\u0627\u06cc \u0634\u0645\u0627 \u0639\u0632\u06cc\u0632\u0627\u0646 \u0637\u0631\u0627\u062d\u06cc \u0634\u062f\u0647 \u0627\u0633\u062a. \u0628\u0631\u0627\u06cc \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u06cc\u0634\u062a\u0631 \u0628\u0627 \u062c\u0631\u0626\u06cc\u0627\u062a \u062f\u0648\u0631\u0647 \u0647\u0627 \u0648 \u062f\u06cc\u06af\u0631 \u062f\u0648\u0631\u0647 \u0647\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u0646\u0648\u06cc\u0633\u06cc\u060c \u0628\u0627 \u0645\u0634\u0627\u0648\u0631\u0627\u0646 \u0645\u0627 \u062f\u0631 \u0631\u0627\u0634\u062f \u0645\u0634\u0647\u062f \u062a\u0645\u0627\u0633 \u0628\u06af\u06cc\u0631\u062f.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0631\u06cc \u0627\u06a9\u062a (React.js) \u06cc\u06a9 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 (library) \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \u0628\u0631\u0627\u06cc \u0633\u0627\u062e\u062a \u0631\u0627\u0628\u0637 \u06a9\u0627\u0631\u0628\u0631\u06cc (UI) \u062a\u0639\u0627\u0645\u0644\u06cc \u0627\u0633\u062a.&hellip;<\/p>\n","protected":false},"featured_media":45295,"comment_status":"open","ping_status":"closed","template":"","meta":[],"product_brand":[],"product_cat":[1886,1924],"product_tag":[],"class_list":["post-45293","product","type-product","status-publish","has-post-thumbnail","product_cat---it--","product_cat-information-technology-courses","first","outofstock","shipping-taxable","purchasable","product-type-simple"],"_links":{"self":[{"href":"https:\/\/rashed.ir\/blog\/wp-json\/wp\/v2\/product\/45293","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rashed.ir\/blog\/wp-json\/wp\/v2\/product"}],"about":[{"href":"https:\/\/rashed.ir\/blog\/wp-json\/wp\/v2\/types\/product"}],"replies":[{"embeddable":true,"href":"https:\/\/rashed.ir\/blog\/wp-json\/wp\/v2\/comments?post=45293"}],"version-history":[{"count":0,"href":"https:\/\/rashed.ir\/blog\/wp-json\/wp\/v2\/product\/45293\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rashed.ir\/blog\/wp-json\/wp\/v2\/media\/45295"}],"wp:attachment":[{"href":"https:\/\/rashed.ir\/blog\/wp-json\/wp\/v2\/media?parent=45293"}],"wp:term":[{"taxonomy":"product_brand","embeddable":true,"href":"https:\/\/rashed.ir\/blog\/wp-json\/wp\/v2\/product_brand?post=45293"},{"taxonomy":"product_cat","embeddable":true,"href":"https:\/\/rashed.ir\/blog\/wp-json\/wp\/v2\/product_cat?post=45293"},{"taxonomy":"product_tag","embeddable":true,"href":"https:\/\/rashed.ir\/blog\/wp-json\/wp\/v2\/product_tag?post=45293"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}