ธีมที่กำหนดเอง
การสร้างธีมที่กำหนดเอง
ในขณะที่ธีมที่สร้างไว้แล้วให้ระดับการปรับแต่งบางอย่าง แต่ชนิด Theme
ให้ช่วยคุณกำหนดธีมที่กำหนดเองด้วยการเข้าถึงตัวแปรธีมพื้นฐานในระดับล่าง
คุณสามารถขยายธีมที่สร้างไว้แล้วโดยไม่ต้องกำหนดนิยามธีมทั้งหมดซ้ำ นี่มีประโยชน์เมื่อคุณต้องการเปลี่ยนแปลงเฉพาะโทเค็นของธีมที่เฉพาะเจาะจง นี่มีประโยชน์เมื่อคุณต้องการเปลี่ยนแปลงเฉพาะโทเค็นของธีมที่เฉพาะเจาะจง นี่มีประโยชน์เมื่อคุณต้องการเปลี่ยนแปลงเฉพาะโทเค็นของธีมที่เฉพาะเจาะจง
ในการทำเช่นนั้น ให้ติดตั้ง lodash.merge
(หรือเทียบเท่า):
นำเข้า พร้อมกับธีมที่คุณต้องการขยาย (เช่น: darkTheme
) และชนิด TypeScript Theme
:
จากนั้น รวมธีมที่สร้างไว้แล้วกับโทเค็นธีมที่คุณต้องการเปลี่ยนแปลง จากนั้น รวมธีมที่สร้างไว้แล้วกับโทเค็นธีมที่คุณต้องการเปลี่ยนแปลง ในตัวอย่างนี้ ฉันกำลังเปลี่ยนแปลงโทเค็น accentColor
ให้ตรงกับสีของยี่ห้อของฉัน จากนั้น รวมธีมที่สร้างไว้แล้วกับโทเค็นธีมที่คุณต้องการเปลี่ยนแปลง ในตัวอย่างนี้ ฉันกำลังเปลี่ยนแปลงโทเค็น accentColor
ให้ตรงกับสีของยี่ห้อของฉัน
สุดท้ายนี้ คุณสามารถส่งธีมที่กำหนดเองของคุณไปยัง RainbowKitProvider
's theme
prop ได้แล้ว
ถ้าแอปของคุณถูกเรนเดอร์จากเซิร์ฟเวอร์/สแตติกและให้ผู้ใช้สลับธีมด้วยตนเอง ระบบธีมของ RainbowKit สามารถเชื่อมต่อกับตัวเลือก CSS ที่กำหนดเองด้วยฟังก์ชั่นดังต่อไปนี้ที่สามารถใช้ได้กับระบบ CSS-in-JS ใด ๆ:
cssStringFromTheme
cssObjectFromTheme
ฟังก์ชันเหล่านี้ส่งคืน CSS ที่ตั้งค่าตัวแปรธีมทั้งหมดที่จำเป็น เนื่องจากทั้งสตริงและออบเจ็กต์ได้รับการสนับสนุน สิ่งนี้สามารถรวมเข้ากับระบบ CSS-in-JS ใด ๆ ฟังก์ชันเหล่านี้ส่งคืน CSS ที่ตั้งค่าตัวแปรธีมทั้งหมดที่จำเป็น เนื่องจากทั้งสตริงและออบเจ็กต์ได้รับการสนับสนุน สิ่งนี้สามารถรวมเข้ากับระบบ CSS-in-JS ใด ๆ เนื่องจากทั้งสตริงและออบเจ็กต์ได้รับการสนับสนุน สิ่งนี้สามารถรวมเข้ากับระบบ CSS-in-JS ใด ๆ
ตัวอย่างพื้นฐาน คุณสามารถเรนเดอร์ style
ของคุณเองด้วยตัวเลือกที่กำหนดเองสำหรับแต่ละธีม ตัวอย่างพื้นฐาน คุณสามารถเรนเดอร์ style
ของคุณเองด้วยตัวเลือกที่กำหนดเองสำหรับแต่ละธีม ตัวอย่างพื้นฐาน คุณสามารถเรนเดอร์ style
ของคุณเองด้วยตัวเลือกที่กำหนดเองสำหรับแต่ละธีม เนื่องจากเราควบคุมการแสดงผล CSS ของธีมเรา ทำให้เราส่งค่า null
ไปยัง theme
prop เพื่อให้ RainbowKitProvider ไม่ต้องจัดการสไตล์ให้เรา ยังควรทราบว่าการใช้ตัวเลือก extends บนฟังก์ชัน cssStringFromTheme ที่ข้ามตัวแปรธีมใด ๆ ที่เหมือนกับธีมฐาน ยังควรทราบว่าการใช้ตัวเลือก extends บนฟังก์ชัน cssStringFromTheme ที่ข้ามตัวแปรธีมใด ๆ ที่เหมือนกับธีมฐาน ยังควรทราบว่าการใช้ตัวเลือก extends บนฟังก์ชัน cssStringFromTheme ที่ข้ามตัวแปรธีมใด ๆ ที่เหมือนกับธีมฐาน