ปฏิกิริยา: วิธีใช้แอตทริบิวต์ ViewBox

เผยแพร่แล้ว: 2023-02-10

ViewBox เป็นแอตทริบิวต์ของ องค์ประกอบ SVG ที่ช่วยให้ผู้ใช้ควบคุมขนาดและขนาดของกราฟิกแบบเวกเตอร์ภายในคอนเทนเนอร์ เมื่อใช้ ViewBox กับ React ผู้พัฒนาจะต้องระบุขนาดของคอนเทนเนอร์ รวมถึงแอตทริบิวต์ แอตทริบิวต์ keepAspectRatio กำหนดว่ากราฟิกมีขนาดและตำแหน่งอย่างไรภายในคอนเทนเนอร์ นักพัฒนายังสามารถควบคุมการปรับขนาดและการแปลกราฟิกโดยใช้แอตทริบิวต์ viewBox

ในการสร้าง viewBox ของ SVG คุณสามารถใช้ React Backstory Popmotion เวอร์ชันใหม่มีไลบรารีแอนิเมชันทั่วไป เนื่องจาก Popmotion เป็นเฟรมเวิร์กที่ไม่เชื่อเรื่องพระเจ้า เราจึงสร้าง React ref และ svg เพื่อเพิ่มประสิทธิภาพแอนิเมชั่น โพสต์นี้จะกล่าวถึงไลบรารีที่รวม Popmotion และเฉพาะ React เนื่องจากผู้ใช้บางรายอาจไม่ต้องการให้มีภาพเคลื่อนไหว จึงสามารถใช้คิวรีสื่อที่ต้องการลดการเคลื่อนไหวและ useMedia แบบกำหนดเอง React hook เพื่อพิจารณาว่ามีการกำหนดค่าตามความชอบนี้หรือไม่ หากผู้ใช้ชอบแอนิเมชั่นที่มีความเร็วต่ำกว่า เราจะหยุดแอนิเมชั่นและรีเซ็ตการ์ตูนกลับเป็น viewBox แบบซูมออกดั้งเดิมทันที มิฉะนั้นเราจะเริ่มแอนิเมชั่น สำหรับทางเลือกที่สอง ฉันสร้างแอนิเมชั่น React โดยใช้ wrapper ที่ทำงานร่วมกับ Popmotion แล้วเรนเดอร์โดยใช้ Framer Motion

คุณยังสามารถตั้งค่า viewBox เป็นอัตโนมัติได้เมื่อใช้ *svg อัตราส่วนกว้างยาวโดยรวมของ viewBox จะถูกปรับโดยเบราว์เซอร์ซึ่งเป็นส่วนหนึ่งของการตั้งค่า

Viewbox จำเป็นสำหรับ Svg หรือไม่

Viewbox จำเป็นสำหรับ Svg หรือไม่
ที่มารูปภาพ: https://sourcecodester.com

ต้องใช้ ViewBox สำหรับ SVG มีระบบพิกัดสำหรับองค์ประกอบกราฟิก

เป็นผลให้เราสามารถเติม SVG ของเราในคอนเทนเนอร์ใดก็ได้ เช่น สมมติว่าเรามีภาพนกน้อย เมื่อตั้งค่า viewBox อย่างถูกต้องบนรูปภาพนี้ ขนาดคอนเทนเนอร์จะถูกปรับขนาดตามขนาดที่ระบุโดยรูปภาพนี้ นอกจากนี้ viewBox ยังให้ความสามารถในการปกปิดบางส่วนของภาพ ทำให้มีประโยชน์อย่างมากสำหรับภาพเคลื่อนไหว การใช้ viewBox ทำให้เราสามารถครอบตัดรูปภาพได้อย่างมีประสิทธิภาพมากขึ้น เมื่อใช้โปรแกรมนี้ เราสามารถสร้างแอนิเมชันของเมฆที่เคลื่อนผ่านท้องฟ้าได้ คุณสร้างภาพเคลื่อนไหวได้โดยเปลี่ยนค่า min-x ของ viewBox เนื่องจากสามารถรักษาอัตราส่วนที่มากเกินพอได้ ฉันจึงขอตัดประเด็นนี้ออกจากบทความนี้

วิธีปรับขนาดรูปภาพเป็น Html

ในกรณีนี้ คุณสามารถเปลี่ยนแอตทริบิวต์ความกว้างและความสูงให้พอดีกับขนาดที่ต้องการได้


Svg ใช้ช่องมองภาพ

Svg ใช้ช่องมองภาพ
ที่มาของภาพ: https://clipartart.com

แอตทริบิวต์ viewBox เป็นส่วนสำคัญของ ข้อกำหนด SVG เป็นวิธีที่ยอดเยี่ยมในการควบคุมการปรับขนาดและการแปลรูปภาพ SVG สามารถใช้แอตทริบิวต์ viewBox กับองค์ประกอบหรือองค์ประกอบหรือองค์ประกอบ เมื่อใช้กับหนึ่งในองค์ประกอบเหล่านี้ แอตทริบิวต์ viewBox จะสร้างวิวพอร์ตใหม่สำหรับเนื้อหาขององค์ประกอบ

ViewBox และ viewPort เป็นคำที่ใช้กันทั่วไปใน SVG ฟังก์ชันของ ViewPort คล้ายกับรูปภาพที่อยู่ในคอนเทนเนอร์ ViewBox สามารถเข้าถึงได้ผ่านวิวพอร์ต นอกจากนี้ คุณสามารถปรับขนาดได้โดยเลื่อนไปทางซ้าย ขวา ขึ้น และลง เนื่องจาก viewBox ที่มี w/h มีขนาดเล็กกว่า 300 x 500 รูปภาพจึงมีขนาดเล็กลงภายในวิวพอร์ต (ซูมออก) ViewBox x/y เลื่อนภาพไปทางขวา/ล่างภายใน viewBox ความกว้าง/ความสูงของ viewBox และวิวพอร์ตทั้งหมดอาจถูกขยาย (div / p /) หรือล้น (html / vi) หากวิวพอร์ตมีขนาดใหญ่กว่าสำรับไพ่ การเพิ่มหมายเลขช่องมองภาพ “x y…” จะทำให้ภาพช่องซีเรียลเลื่อนขึ้น/ซ้าย

Svg 101: พื้นฐาน

ขั้นตอนการสร้าง SVG นั้นเรียบง่าย แต่มีบางสิ่งที่ต้องจำไว้ ViewsBox ไม่ได้อยู่ในโลกแห่งความเป็นจริงเพราะอิงจาก 0-100 หน่วย นอกจากนี้ ระบบพิกัดถูกกำหนดเป็นหน่วย 0-100 แทนที่จะเป็นพิกเซล คุณต้องระบุขนาดของไฟล์ svg เป็นพิกเซลก่อนจึงจะแสดงผลได้ ภาพด้านล่างเป็น SVG แบบธรรมดา ตั้งค่าผ้าใบในบรรทัดแรก แล้วตัด svg ในบรรทัดที่สอง ซึ่งหมายความว่า svg จะมีความกว้าง 200 พิกเซลและสูง 200 พิกเซลตามที่แสดงในการตั้งค่า viewBox xmlns=”svg” กว้าง:200 สูง:200

ตอบสนอง Svg

React-SVG เป็นไลบรารีที่ให้คุณรวมไฟล์ Scalable Vector Graphics (SVG) ไว้ใน แอปพลิเคชัน React ของคุณ เป็นวิธีที่ง่ายในการรวมไฟล์ SVG ในแอปพลิเคชันของคุณ และมีคุณสมบัติหลายอย่างที่ช่วยให้คุณสามารถจัดการไฟล์ SVG ในแอปพลิเคชันของคุณได้

ใช้รูปแบบภาพกราฟิกที่ใช้ XML ที่เรียกว่า SVG แบรนด์ยอดนิยมบางแบรนด์ เช่น Twitter, YouTube, Udacity, Netflix และอื่นๆ ใช้กราฟิกแบบเวกเตอร์ที่ปรับขนาดได้สำหรับรูปภาพและไอคอน คุณสามารถนำเข้าและใช้ SVG เป็นส่วนประกอบ React ในโค้ดของคุณได้โดยตรง รูปภาพ แทนที่จะเป็นไฟล์แยกต่างหาก จะแสดงผลควบคู่ไปกับ HTML ด้วยการใช้ SVGR กรอบ CRA ช่วยให้สามารถแปลงและนำเข้า SVG เป็นส่วนประกอบ React หากคุณไม่มี Create React App คุณควรคิดถึงตัวเลือกอื่นๆ กราฟิกแบบเวกเตอร์ที่ปรับขนาดได้ (SVG) สามารถแปลงเป็นส่วนประกอบ React โดยใช้เครื่องมืออันทรงพลังเช่น SVGR

โดยทั่วไปแล้วไฟล์ DOM จะถูกสร้างขึ้นจากสิ่งนี้ ชั้นมิดเดิลแวร์ LogRocket Redux ของแพ็คเกจนี้ช่วยให้คุณมองเห็นเซสชันของผู้ใช้เพิ่มเติม เป้าหมายของ LogRocket คือติดตามการกระทำและสถานะของ Redux ทั้งหมด ไม่เพียงแต่ตรวจสอบประสิทธิภาพแอปของคุณเท่านั้น แต่ยังจัดทำรายงานเกี่ยวกับโหลดของ CPU การใช้หน่วยความจำ และอื่นๆ ถึงเวลาปรับปรุงวิธีการดีบัก แอป React ของคุณให้ทันสมัย ​​และเริ่มตรวจสอบได้ฟรีทันที

ควรใช้ Svg หรือ Png ในการตอบสนองดีกว่ากัน?

ใช้แทนตัวอักษร หากคุณมีไฟล์ jpeg ในแอป React Native คุณควรใช้ รูปแบบ SVG รูปแบบเวกเตอร์ เช่น SVG ซึ่งมีความยืดหยุ่นและความยืดหยุ่น เหมาะอย่างยิ่งสำหรับการจัดเก็บข้อมูลในรูปแบบต่างๆ

ประโยชน์มากมายของการใช้ไฟล์ Svg

แม้จะมีขนาดไฟล์ที่เล็กกว่าไฟล์ AI แต่ SVG ก็ยังสามารถแก้ไขและปรับขนาดได้ รูปแบบไฟล์ SVG สำหรับแสดงภาพ 2 มิติคุณภาพสูงบนอินเทอร์เน็ตได้รับการออกแบบมาเพื่อทำให้ SEO ง่ายขึ้น

สเกล Svg ตอบสนอง

Svg React Scale เป็นแพ็คเกจ npm ที่ให้คุณปรับขนาดส่วนประกอบ React ของคุณได้อย่างง่ายดาย มี API แบบง่ายที่ให้คุณระบุความกว้างและความสูงของส่วนประกอบได้ และจะปรับขนาดส่วนประกอบให้พอดีกับขนาดเหล่านั้นโดยอัตโนมัติ

วิธีปรับขนาดกราฟิกแบบเวกเตอร์ที่ปรับขนาดได้ (SVG) Amelia Bellamy-Royds สอนทุกสิ่งที่คุณจำเป็นต้องรู้เกี่ยวกับการปรับขนาด SVG มันไม่ง่ายเหมือนการปรับขนาดกราฟิกแรสเตอร์ แต่มีแอปพลิเคชั่นที่น่าสนใจมากมาย อาจเป็นเรื่องยากสำหรับผู้เริ่มต้นในการเรียนรู้วิธีใช้ SVG อย่างถูกวิธี ชิ้นเค้กหมายถึงรูปภาพที่มีอัตราส่วนกว้างยาวที่ชัดเจน: อัตราส่วนของความกว้างต่อความสูง ในบางกรณี คุณสามารถบังคับให้เบราว์เซอร์วาดภาพแรสเตอร์ในขนาดที่แตกต่างจากความสูงและความกว้างที่แท้จริง แต่ในบางกรณี คุณต้องบิดเบือนภาพเพื่อที่จะวาด SVG แบบอินไลน์จะถูกวาดตามขนาดที่ระบุในโค้ด โดยไม่คำนึงว่าผืนผ้าใบจะใหญ่หรือเล็ก ViewBox ใช้เพื่อสร้างกราฟิกแบบเวกเตอร์ที่ปรับขนาดได้ ซึ่งเป็นส่วนสุดท้ายของปริศนากราฟิกแบบเวกเตอร์

องค์ประกอบ viewBox เป็นหนึ่งในตัวระบุขององค์ประกอบ ตัวเลขแบ่งออกเป็นสี่ส่วน: x, y, ความกว้าง และความสูง และแสดงด้วยช่องว่างหรือเครื่องหมายจุลภาค ต้องระบุระบบพิกัดสำหรับวิวพอร์ตซ้ายสุดที่มุมบนซ้าย ความสูงของโปรแกรมถูกกำหนดเป็นจำนวนของพิกัดและ ps/ps ที่ต้องปรับขนาดเพื่อให้ได้มา เมื่ออัตราส่วนภาพไม่เป็นไปตามขนาด ภาพจะถูกยืดหรือบิดเบี้ยว คุณสมบัติพอดีกับวัตถุช่วยให้คุณใส่รูปภาพประเภทต่างๆ ลงในเนื้อความ CSS เดียวกันได้ คุณยังสามารถเลือกที่จะตั้งค่าตัวเลือก preservRatioAspect=”ไม่มี” เพื่อให้รูปภาพของคุณปรับขนาดได้เหมือนกับภาพแรสเตอร์

ในภาพแรสเตอร์ คุณสามารถกำหนดความกว้างหรือความสูงเพื่อให้ตรงกับมาตราส่วนในชุดอื่นได้ วิธีที่ดีที่สุดในการทำเช่นนั้นคืออะไร? เอสวีจี? ไม่มีวิธีง่ายๆในการแก้ปัญหานี้ ในการเริ่มต้น คุณจะต้องเรียนรู้วิธีใช้การปรับขนาดภาพอัตโนมัติด้วยภาพ >img.> หากต้องการกำหนดอัตราส่วนกว้างยาวขององค์ประกอบ คุณสามารถใช้คุณสมบัติ CSS ที่หลากหลายเพื่อปรับความสูงและระยะขอบ หากภาพมี viewBox เบราว์เซอร์อื่นจะใช้ขนาดเริ่มต้น 300*150 โดยอัตโนมัติ

หากคุณใช้เบราว์เซอร์ Blink/Firefox ล่าสุด รูปภาพจะพอดีกับช่องมองภาพตามขนาดรูปภาพ หากคุณไม่ระบุความสูงหรือความกว้าง เบราว์เซอร์เหล่านี้จะใช้ขนาดเริ่มต้นเหมือนเดิม นี่เป็นวิธีที่ง่ายที่สุดในการแทนที่องค์ประกอบใน SVG เช่นเดียวกับใน <object> และวิธีอื่นๆ อินไลน์กราฟิกมักจะมีค่าเป็นศูนย์ในแง่ของความสูงที่เป็นทางการ กราฟิกจะถูกลดขนาดลงจนไม่มีค่า ถ้าค่า preservRatioAspect ถูกตั้งค่าเป็นค่าเริ่มต้น ด้วยเหตุนี้ คุณจึงต้องการให้กราฟิกของคุณยืดออกจนครอบคลุมความกว้างทั้งหมด แล้วจึงขยายออกไปยังพื้นที่รองที่คุณตั้งค่าอัตราส่วนภาพที่ถูกต้องไว้อย่างระมัดระวัง แอตทริบิวต์ ViewBox และ PreserveRatioAspect สามารถปรับเปลี่ยนได้อย่างมาก องค์ประกอบที่ซ้อนกันสามารถใช้เพื่อสร้างสเกลกราฟิกที่เป็นอิสระโดยแต่ละองค์ประกอบมีแอตทริบิวต์การปรับสเกลของตัวเอง ด้วยเหตุนี้ คุณสามารถใช้วิธีนี้เพื่อสร้างกราฟิกส่วนหัวที่ครอบคลุมพื้นที่กว้างโดยไม่ต้องสูญเสียความสูง

วิธีปรับขนาดภาพ Svg ในการตอบสนอง

เมื่อใช้ React ให้ทำการเปลี่ยนแปลงต่อไปนี้ การแปลง CSS สามารถเปลี่ยนขนาดของ ComponentName /> โดยการแปลงค่าจากสเกล (2) เป็นสเกล (3) โดยใช้ชื่อคลาสหรือไฟล์ CSS ส่วนกลาง คุณสามารถเปลี่ยนสีของคลาสคอมโพเนนต์ได้โดยเลือก เติมสี และเปลี่ยนสเกลโดยเลือก แต่ถ้าคุณเปลี่ยนสเกล คลาสคอมโพเนนต์จะเปลี่ยนไป คุณจะปรับขนาดไฟล์ SVG ได้อย่างไร ก่อนอื่นคุณต้องลากและวาง ไฟล์ภาพ SVG หรือคลิกภายในพื้นที่สีขาวเพื่อเลือกไฟล์ หากต้องการปรับขนาด ให้คลิกปุ่มปรับขนาด คุณสามารถดาวน์โหลดผลลัพธ์ได้เมื่อกระบวนการเสร็จสิ้น

Usemedia Custom React Hook

ไม่มี React hook ในตัวสำหรับการสืบค้นสื่อ แต่คุณสามารถใช้ react hook แบบกำหนดเองของ useMedia ได้ hook นี้ส่งคืนค่าบูลีนที่ระบุว่าข้อความค้นหาสื่อที่ระบุตรงกันหรือไม่ คุณสามารถใช้ตะขอ useMedia ได้ดังนี้:
นำเข้า { useMedia } จาก 'usemedia';
const isSmall = useMedia('(ความกว้างสูงสุด: 600px)');

คุณลักษณะ Media Queries ของ CSS ช่วยให้คุณสามารถใช้สไตล์เฉพาะกับองค์ประกอบ HTML ได้ตามต้องการ ตัวอย่างคิวรีสื่อทั่วไปคือการกำหนดความกว้างของหน้าต่างคือขนาดของหน้าจอ (พิมพ์ สกรีน) และสื่อประเภทใด คุณสามารถใช้หน้าต่างเพื่อตรวจสอบการค้นหาสื่อโดยใช้ JavaScript วัตถุ MediaQueryList จะถูกส่งกลับเป็นผลลัพธ์ของสตริงข้อความค้นหาแต่ละรายการในฟังก์ชันนี้ ไลบรารี MatcMedia มี React Hook ที่ให้คุณตรวจสอบผลการจับคู่ Media Query และเปลี่ยนอินเทอร์เฟซหรือพฤติกรรมของแอปพลิเคชันของคุณตามผลลัพธ์นั้น หากต้องการกล่าวอีกนัยหนึ่ง คำจำกัดความประเภท hooks ของ TypeScript จะมีลักษณะดังนี้ จากผลของ hook ของเรา บูลีนจะถูกส่งกลับเป็นสตริงการสืบค้นเป็นพารามิเตอร์ วิธีการที่เรียกว่า matchMedia จะถูกเพิ่มเพื่อเปลี่ยนผู้ฟังเหตุการณ์

เราสามารถสร้าง Custom Hooks ในการตอบสนองได้หรือไม่?

เมื่อเราต้องการใช้ตรรกะสำหรับทั้ง hooks useState และ useEffect ในหลาย ๆ คอมโพเนนต์ Hooks แบบกำหนดเองเป็นตัวเลือกที่ดี ด้วย React Hooks แบบกำหนดเอง เราสามารถใช้ตรรกะ stateful ซ้ำในส่วนประกอบต่างๆ ในลักษณะที่ปรับให้เหมาะสมและปรับขนาดได้

ข้อดีข้อเสียของ React Hooks และ Redux

ใช้ตะขอที่นี่ คุณสามารถนำความลับ Redux ออกได้อย่างง่ายดาย และในกรณีส่วนใหญ่ คุณสามารถทำให้มันทำงานได้โดยไม่ต้องเรียนรู้ นอกจากนี้ยังปรับเปลี่ยนได้มากขึ้น ช่วยให้คุณใช้งานได้มากกว่าการจัดการสถานะ
หากคุณยังไม่แน่ใจ ลองพิจารณาวิธีใช้คุณสมบัติการจัดการสถานะของ React และ Redux หากคุณต้องการแก้ไขแอปพลิเคชันตามอินพุตของผู้ใช้ Redux คือตัวเลือกที่ดีที่สุด ตะขอเป็นทางเลือกที่ดีหากคุณต้องการจัดเก็บสิ่งของเพียงไม่กี่ชิ้น
การตัดสินใจขั้นสุดท้ายขึ้นอยู่กับคุณ คุณมีอิสระที่จะเลือกแนวทางที่ดีที่สุดสำหรับโครงการของคุณ อย่างไรก็ตาม อย่าลืมว่าแต่ละข้อมีข้อดีและข้อเสียต่างกันไป ดังนั้นคุณจึงสามารถตัดสินใจได้ดีที่สุดสำหรับสถานการณ์เฉพาะของคุณ

คุณใส่ Custom React Hooks ไว้ที่ไหน?

คุณควรใช้ Hooks ที่ด้านบนสุดของฟังก์ชัน React ก่อนเริ่มดำเนินการส่งคืน หากคุณทำตามกฎนี้ คุณสามารถรับประกันได้ว่า hooks จะถูกวางในลำดับเดียวกันทุกครั้งที่คอมโพเนนต์แสดงผล เป็นผลให้ React สามารถรักษาสถานะของ Hooks ระหว่างการเรียกใช้ useState และการเรียกใช้ useEffect ได้อย่างเหมาะสม

React Hooks: คำแนะนำสำหรับการใช้งาน

นอกจากนี้ยังมีปัญหาเกี่ยวกับ React hooks เนื่องจากไม่ได้จัดทำเป็นเอกสารไว้อย่างดี ผู้ที่ยังใหม่กับ React อาจพบว่าใช้งานยาก ในทางกลับกัน ตะขออาจเข้าใจได้ยากเพราะใช้งานได้หลากหลายวิธี เพื่อรับมือกับความท้าทายเหล่านี้ ฉันขอแนะนำให้ นักพัฒนา React เริ่มต้นใช้งาน hooks โดยใช้แนวทางง่ายๆ สองสามข้อ ก่อนที่คุณจะเริ่ม คุณต้องอ่านเอกสารก่อนเพื่อเรียนรู้เกี่ยวกับ hooks ต่างๆ ที่มีให้ใช้งาน สุดท้าย หลีกเลี่ยงการใช้ตะขอบ่อยเกินไป เมื่อเปิดใช้งานตัวเลือกนี้ codebase ของคุณจะสามารถอ่านได้ง่าย ตรวจสอบให้แน่ใจว่าคุณเขียนการทดสอบใด ๆ ที่คุณต้องการเพื่อทดสอบ hooks ของคุณ คุณยังสามารถตรวจสอบให้แน่ใจว่าคำแนะนำนั้นถูกต้องและคุณเข้าใจวิธีการทำงานด้วยการทำเช่นนั้น คุณสามารถใช้ hooks เพื่อปรับปรุง React codebases โดยทั่วไป หากคุณปฏิบัติตามคำแนะนำเหล่านี้ คุณจะสามารถเขียนโค้ดที่เข้าใจง่ายขึ้นและส่งผลให้ประสิทธิภาพดีขึ้น

ฉันควรใช้ Custom Hooks React หรือไม่

จำเป็นต้องมี Custom React JS hooks หากคุณมี React hooks อย่างน้อยหนึ่งตัวที่จะใช้ในตำแหน่งต่างๆ ในโค้ด สิ่งนี้ช่วยในกระบวนการเข้ารหัสที่มีประสิทธิภาพและชัดเจน

ทำไมต้องใช้ Custom Hooks?

hook แบบกำหนดเองอาจมีประโยชน์ด้วยเหตุผลหลายประการ มีเหตุผลมากมายที่โค้ดสามารถนำมาใช้ซ้ำได้ ตัวอย่างเช่น ลอจิก setState หรือ localStorage ทั่วไปสามารถฝังอยู่ใน hook และใช้กับคอมโพเนนต์ทั้งหมด
นอกจากนี้ยังมีสาเหตุหลายประการที่คุณอาจต้องการใช้ hook แบบกำหนดเอง คอมโพเนนต์ "โฮสต์" ของ hook จะแสดงผลอีกครั้งเมื่อ hook เปลี่ยนแปลงในสถานะ โดยไม่คำนึงว่าการเปลี่ยนแปลงจะส่งผลต่อค่าที่ส่งคืนหรือไม่ เป็นผลให้ hooks เป็นวิธีที่มีประสิทธิภาพในการดำเนินการตามตรรกะทั่วไป
อย่างไรก็ตาม การใช้ hooks มีข้อเสียอย่างหนึ่ง: พวกมันสามารถเรนเดอร์โปรแกรมได้ แม้ว่าจะเป็นบทลงโทษด้านประสิทธิภาพ แต่ก็ไม่รุนแรงเสมอไป

Hooks แบบกำหนดเองสามารถแทนที่ Redux ได้หรือไม่

ในแง่ของการปรับขนาด React hook แบบกำหนดเองอาจเป็นทางเลือกที่บวมน้อยกว่า Redux และจัดการสถานะข้ามองค์ประกอบ หลีกเลี่ยงการ propdrilling และอื่นๆ นอกจากนี้ ด้วยการใช้ react hooks ที่มีอยู่แล้วและหลีกเลี่ยงการพึ่งพาการพึ่งพาเพิ่มเติม เช่น redux npm จะทำให้ขนาดของแอปพลิเคชันมีขนาดเล็กที่สุดเท่าที่จะเป็นไปได้

React Hooks กับ Redux ต่างกันอย่างไร?

React Hooks อนุญาตให้แอปพลิเคชัน React จัดการกับสถานะในเครื่อง สถานะส่วนกลางและการดำเนินการที่สามารถจัดส่งได้จะถูกเก็บไว้ใน Redux ในขณะที่ React Hooks จัดการสถานะส่วนประกอบในเครื่อง เนื่องจาก React Hooks สามารถใช้กับส่วนประกอบขนาดเล็กหรือแยกส่วนได้ จึงเป็นตัวเลือกที่ดีกว่าสำหรับส่วนประกอบขนาดเล็กหรือแยกส่วน HOCs เช่น Hooks เป็นรูปแบบที่ไม่ขึ้นกับการตอบสนอง ฟังก์ชั่นและ HOCs สามารถเขียนได้เหมือน React hooks แต่ React hooks ไม่สามารถเขียนได้ React Hooks มีประสิทธิภาพมากกว่าสำหรับส่วนประกอบที่มีขนาดใหญ่และซับซ้อนมากขึ้นเนื่องจากขนาดที่ใหญ่ขึ้น ขึ้นอยู่กับคุณว่าคุณต้องการบรรลุผลใด Redux เป็นเครื่องมือที่ยอดเยี่ยมสำหรับการพัฒนาแอปพลิเคชันระดับโลก ในขณะที่ React Hooks นั้นเหมาะสำหรับส่วนประกอบที่มีขนาดเล็กและเฉพาะเจาะจงมากกว่า