SVG ในโครงการ Gatsby ถัดไปของคุณ
เผยแพร่แล้ว: 2023-01-03หากคุณต้องการใช้ Scalable Vector Graphics (SVG) ในโครงการเว็บครั้งต่อไปกับ Gatsby คุณโชคดีแล้ว! ในบทความนี้ เราจะกล่าวถึงวิธีการใช้ไฟล์ SVG ในโปรเจ็กต์ Gatsby ของคุณ ไม่ว่าคุณจะใช้เป็นภาพประกอบหรือไอคอนก็ตาม นอกจากนี้ เราจะกล่าวถึงวิธีเพิ่มประสิทธิภาพ SVG ของคุณเพื่อประสิทธิภาพ ในตอนท้ายของบทความนี้ คุณควรมีความเข้าใจที่ดีเกี่ยวกับวิธีใช้ SVG ใน Gatsby และวิธีปรับให้เหมาะสมสำหรับโครงการของคุณ
คุณจะนำเข้ารูปภาพไปยัง Great Gatsby ได้อย่างไร?
ในการนำเข้ารูปภาพไปยัง Great Gatsby คุณจะต้องเปิดไฟล์ Great Gatsby ก่อน เมื่อเปิดไฟล์แล้ว ให้ไปที่แท็บ "แทรก" จากนั้นคลิก "รูปภาพ" จากนั้น คุณจะสามารถเลือกรูปภาพที่คุณต้องการแทรกได้
ปลั๊กอินอิมเมจ Gatsby ได้รับการปรับปรุงประสิทธิภาพนอกเหนือจากคุณสมบัติใหม่ API ที่ง่ายขึ้น และประสิทธิภาพที่ดีขึ้น มีจุดประสงค์เพื่อให้ทำงานได้อย่างราบรื่นด้วยความสามารถในการประมวลผลภาพแบบเนทีฟของ Gatsby เพิ่มประสิทธิภาพการบีบอัด JPEG และ PNG เพื่อสร้าง ภาพขนาดย่อหลายภาพ รหัสนี้เหมาะสำหรับรูปภาพที่มีความกว้าง/ความสูงคงที่ และรูปภาพที่ขยายเต็มความกว้างของคอนเทนเนอร์ gatsby-image รองรับภาพตอบสนองสองประเภท เพื่อให้ได้ประโยชน์สูงสุดจากความละเอียดหน้าจอของสถานการณ์แรก คุณควรปรับขนาดของภาพ สามารถใช้อ็อบเจกต์ย่อยของอิมเมจที่เรียกว่า fixed เพื่อค้นหาประเภทแรกใน Gatsby
เช่นเดียวกับประเภทที่สอง คุณจะทำแบบสอบถามที่คล้ายกันสำหรับวัตถุย่อยที่เรียกว่าของเหลว หากคอนเทนเนอร์เป็นประเภทของเหลว รูปภาพในคอนเทนเนอร์จะถูกยืดออกเพื่อให้ตรงกับความกว้างและความสูง หลีกเลี่ยงกรณีขอบที่รูปภาพไม่ตรงกับวิวพอร์ต ภาพหลายภาพ จะแสดงที่จุดพักที่แตกต่างกัน เมื่อใช้การกำกับภาพเพื่อให้ได้เอฟเฟ็กต์ภาพ ในการทำเช่นนี้ เบราว์เซอร์จะใช้แท็ก >รูปภาพ> ซึ่งทำให้แน่ใจว่าพวกเขาจะดาวน์โหลดเฉพาะรูปภาพที่จำเป็นสำหรับเบรกพอยต์นั้นเท่านั้น
วิธีที่ดีที่สุดในการนำเข้ารูปภาพไปยังไซต์ Gatsby
หนึ่งในวิธีทั่วไปในการเพิ่มรูปภาพลงในไซต์ Gatsby คือการนำเข้าไฟล์โดยตรงไปยังเทมเพลต หน้า หรือคอมโพเนนต์ หรือผ่านการนำเข้าไฟล์จากโฟลเดอร์สแตติก เส้นทางเริ่มต้นคือการนำเข้าไฟล์โดยตรงไปยังเทมเพลต หน้า หรือคอมโพเนนต์ของ Gatsby เป็นวิธีที่ง่ายและมีประสิทธิภาพที่สุดในการนำเข้าสินทรัพย์ ซึ่งเป็นสิ่งที่เราใช้มากที่สุด มีบางกรณีที่โฟลเดอร์แบบคงที่อาจเป็นตัวเลือกที่สะดวกกว่า Gatsby-image เป็นส่วนประกอบ React ที่ออกแบบมาเป็นพิเศษเพื่อจัดการกับการสืบค้น GraphQL Gatsby ช่วยให้คุณสามารถเพิ่มประสิทธิภาพการโหลดรูปภาพในเว็บไซต์ของคุณได้อย่างง่ายดายและสมบูรณ์แบบด้วยความสามารถในการประมวลผลภาพแบบเนทีฟและเทคนิคการโหลดภาพขั้นสูง หากคุณต้องการนำเข้ารูปภาพไปยังไซต์ Gatsby อย่างรวดเร็วและง่ายดาย นี่เป็นวิธีที่เร็วและง่ายที่สุดในการดำเนินการดังกล่าว
ปลั๊กอินใน Gatsby คืออะไร?
ปลั๊กอินเป็นส่วนของโค้ดที่ขยายการทำงานของ Gatsby พวกเขาสามารถช่วยคุณทำสิ่งต่าง ๆ เช่น เพิ่มการรองรับสำหรับแหล่งข้อมูลต่าง ๆ ปรับแต่งไซต์ของคุณเพื่อประสิทธิภาพ หรือแม้แต่เพิ่มฟีเจอร์ต่าง ๆ เช่น การวิเคราะห์
Gatsby static-site generator เป็นแพลตฟอร์มที่ใช้ React สำหรับสร้างเว็บไซต์ ปลั๊กอินเปิดใช้งานการสร้างฟังก์ชันการทำงานแบบกำหนดเองที่ไม่มีในการติดตั้งมาตรฐาน ในบทช่วยสอนนี้ เราจะเรียนรู้วิธีสร้างปลั๊กอินที่สามารถใช้กับไซต์ Gatsby ใดก็ได้ เพื่อให้ Gatsby ทำงานได้ ก่อนอื่นเราต้องติดตั้ง axios ซึ่งช่วยให้เราแสดงความคิดเห็นบนเว็บไซต์ได้ สิ่งสำคัญคือต้องกำหนดประเภทโหนดใหม่ นั่นคือ CommentServer ซึ่งใช้เพื่อขยาย Node.js หลังจากนั้น เราสามารถใช้ axios เพื่อดึงความคิดเห็นจากฐานข้อมูลความคิดเห็นและเก็บไว้ในชั้นการเข้าถึงข้อมูลเป็น CommentServer ในการจัดหาโหนดใหม่ เราต้องติดตั้ง sourceNodes API ใน gatsby-node.js
สุดท้าย เราต้องใช้ API ที่เรียกว่า createResolvers เพื่อแก้ไขความคิดเห็นในโพสต์ ความคิดเห็นจะถูกบันทึกไว้ในไฟล์ JSON ที่เกี่ยวข้องสำหรับทากหน้า การร้องขอข้อมูลความคิดเห็นตามความต้องการผ่าน HTTP ทำให้สามารถส่งคืนความคิดเห็น GraphQL ได้โดยไม่ต้องใช้การสืบค้นใดๆ ไฟล์ความคิดเห็น API gatsbybrowser.js ต้องใช้เพื่อแสดงความคิดเห็นในเบราว์เซอร์ เมื่อเพจเพิ่งถูกเปิดดู เป็นเวลาที่ดีที่สุดในการดึงไฟล์และการแทรกคอมโพเนนต์ เป้าหมายของเราคือการสร้างองค์ประกอบ HTML โดยกำหนดฟังก์ชันการสร้างองค์ประกอบ HTML เลือก className และเพิ่มเนื้อหา จากนั้นเราต้องแสดงความคิดเห็นจากไดเร็กทอรีสาธารณะเป็นองค์ประกอบ
เราจะกำหนดตัวช่วยที่ส่งคืนความคิดเห็นสำหรับหน้าโดยใช้ชื่อเส้นทางเป็นข้อมูลอ้างอิง เราจะใช้ตัวช่วย createEl เพื่อทำสิ่งนี้ให้สำเร็จโดยการเพิ่มความคิดเห็น กำลังใช้ querySelector API เพื่อสร้างแบบฟอร์มจากเพจ หากผู้ใช้ตัดสินใจส่งแบบฟอร์มแสดงความคิดเห็น เราจะวิเคราะห์เหตุการณ์ onSubmit เพื่อหาเบาะแสว่าพวกเขาจะทำเช่นนั้นเมื่อใด เราสามารถใช้คำติชมเพื่อตรวจสอบว่ามีข้อผิดพลาดกับความคิดเห็นที่พวกเขาสร้างขึ้นหรือส่งความคิดเห็นได้สำเร็จหรือไม่ บทช่วยสอนนี้จะแนะนำคุณตลอดขั้นตอนการสร้าง ปลั๊กอิน Gatsby เพื่อให้แสดงความคิดเห็นบนเว็บไซต์ของเรา คุณสามารถแสดงความคิดเห็นของคุณในบล็อกของคุณโดยใช้ thegatsby-comment-server- plugin เนื่องจากเนื้อหาของเราเป็นแบบคงที่ เราจึงต้องรีสตาร์ทเซิร์ฟเวอร์เพื่อแสดงความคิดเห็นใหม่
ปลั๊กอิน Gatsby Sharp คืออะไร?
ไลบรารีการประมวลผลภาพ Sharp มีฟังก์ชันการประมวลผลภาพมากมาย โดยทั่วไปแล้ว ปลั๊กอิน Gatsby อื่นๆ จะใช้ปลั๊กอินนี้ในโหมดตัวช่วยระดับต่ำ แม้ว่าอาจมีประโยชน์ในบางกรณีเมื่อทำการประมวลผลภาพแบบพิเศษ แต่คุณไม่ควรใช้โดยตรง
Gatsby-plugin-react-svg ไม่ทำงาน
ฉันไม่แน่ใจว่าปัญหาคืออะไร แต่ gatsby-plugin-react-svg ไม่ทำงานสำหรับฉัน ฉันได้ลองทำตามคำแนะนำในหน้า GitHub ของปลั๊กอินแล้ว แต่ไม่เป็นผล มีใครมีปัญหานี้หรือไม่?
รูปภาพปลั๊กอิน Gatsby
อิมเมจปลั๊กอิน Gatsby เป็นปลั๊กอินที่ได้รับความนิยมและมีประโยชน์อย่างมาก ซึ่งสามารถช่วยคุณปรับแต่งรูปภาพของคุณเพื่อประสิทธิภาพที่ดีขึ้น มันสามารถช่วยคุณปรับขนาด ครอบตัด และบีบอัดรูปภาพของคุณโดยอัตโนมัติ
ปลั๊กอิน Gatsby Image จัดการด้านที่ยากที่สุดในการผลิตรูปภาพในรูปแบบและขนาดต่างๆ รูปภาพแบ่งออกเป็นสองประเภท: แบบคงที่และแบบไดนามิก การใช้ ภาพนิ่ง เมื่อใช้ส่วนประกอบจะทำให้ได้ภาพเดียวกันเสมอ เมื่อสร้างเสร็จแล้ว รูปภาพระยะไกลจะถูกดาวน์โหลดและปรับขนาด ด้วย Gatsby Image คุณสามารถโหลดและแสดงภาพโดยใช้ GraphQL และคอมโพเนนต์ GatsbyImage ComponentStaticImage / รวมองค์ประกอบการกำหนดค่าภาพนิ่งที่คุณต้องกำหนดค่า นอกจากนี้ยังช่วยให้คุณเปลี่ยนประเภทของตัวยึดตำแหน่งที่ใช้สำหรับการโหลดแบบขี้เกียจ ตลอดจนขนาดและเค้าโครงของไซต์
ในการส่งภาพนิ่งโดยใช้อุปกรณ์ประกอบฉาก คุณต้องผ่านขั้นตอนทางเทคนิคบางประการก่อน ต้องกำหนดค่าอิมเมจโดยใช้ตัวแก้ไข gatsbyImageData นอกจากตัวเลือกขนาดและเลย์เอาต์แล้ว คุณสามารถเปลี่ยนชนิดของตัวยึดตำแหน่งที่ใช้สำหรับการโหลดแบบ Lazy Loading รวมถึงการตั้งค่าอื่นๆ นอกจากนี้ยังมีการประมวลผลภาพขั้นสูงเช่นเดียวกับการประมวลผลภาพที่คุณสามารถใช้ได้ คู่มืออ้างอิงปลั๊กอิน Gatsby Image อธิบายตัวเลือกการกำหนดค่าทั้งหมด