پرش به مطلب اصلی

استفاده از یک مؤلفه در برنامه‌ای دیگر

هدف​

کارتی را در برنامهٔ «محصولات» کشیده‌اید. همان کارت را در «سفارش‌ها» می‌خواهید — همان یکی، تا اصلاح در یک جا هر دو را اصلاح کند.

یک چیز برای راه‌اندازی هست، یک بار برای هر برنامه: روی برنامه‌ای که مؤلفه‌ها را می‌کشد، «هم‌رسانی مؤلفه‌های این برنامه» را تیک بزنید. آن‌گاه هر چه می‌کشد به همهٔ برنامه‌های دیگر آن محیط پیشنهاد می‌شود، در پنل مؤلفه‌های آن‌ها زیر از برنامه‌های دیگر.

این گزینه به‌طور پیش‌فرض خاموش است، و عمدی: بیشتر برنامه‌ها کتابخانهٔ مؤلفه نیستند، و برنامه‌ای که ناخواسته هم‌رسانی کند شکل‌های نیمه‌کشیده‌اش را در پالت همه می‌گذارد. آن را در برنامه‌های استودیو ← جدید می‌یابید، یا با انتخاب یک برنامه و زدن ویرایش؛ فهرست ستونی دارد که نشان می‌دهد کدام برنامه‌ها هم‌رسانی می‌کنند.

پیش‌تر یک گام اضافه داشت و دیگر ندارد

فهرست جداگانه‌ای به نام «مؤلفه‌های استودیو» در پورتال سازنده بود و دکمه‌ای به نام انتقال به مشترک که مؤلفه را از برنامه‌ای که در آن کشیده بودید بیرون می‌کشید و به رکوردی از آنِ خودش می‌برد. هر دو رفته‌اند. مؤلفه همان‌جا که کشیده شده زندگی می‌کند؛ اگر دنبال آن صفحه می‌گردید، منظورتان بوم همان برنامه است.

یکی بسازید​

قطعه را روی بوم برنامه‌تان بکشید — کنار صفحه یا رویش — دقیقاً مثل هر چیز دیگری. بعد گامی که مهم است:

آنچه کشیده‌اید را انتخاب کنید و «ساخت مؤلفه» را بزنید.

مؤلفه نام شیئی را می‌گیرد که از آن ساخته‌اید، و همان نام است که برنامه‌های دیگر می‌بینند. نام لایه را عوض کنید، نام مؤلفه هم با آن عوض می‌شود. ذخیره کنید.

ساختن یکی همین است. حالا در پالت هر برنامهٔ دیگری هست.

در برنامهٔ دیگری بگذاریدش​

طراح آن برنامهٔ دیگر را باز کنید و به پنل مؤلفه‌ها نگاه کنید. زیر از برنامه‌های دیگر هر مؤلفه‌ای را می‌یابید که برنامه‌های دیگرِ این راه‌حل کشیده‌اند، هر کدام با نام برنامه‌ای که از آن آمده کنارش — چون ممکن است دو برنامه هر دو «کارت» داشته باشند، و فهرستی که یک نام را دو بار نشان دهد فهرستی است که نمی‌شود از آن انتخاب کرد.

یکی را روی بوم بکشید، یا ردیف را انتخاب کنید و Enter بزنید. آنچه می‌نشیند یک نمونه است: نمونهٔ معمولی یک مؤلفه، که می‌توانید جابه‌جا، تغییر اندازه و بازنویسی‌اش کنید، درست مثل یکی که خودتان کشیده‌اید.

ذخیره کنید.

یک بار تغییرش دهید​

برنامه‌ای را که مؤلفه را کشیده باز کنید، تغییرش دهید و ذخیره کنید.

حالا برنامه‌ای را که آن را گذاشته باز کنید. به شما می‌گوید نسخه به‌روز شده و تغییر آن‌جاست. آن برنامه را ذخیره کنید تا بماند. این ذخیرهٔ دوم عمدی است: نوشتن روی طرح کسی چون بازش کرده، کاری نیست که یک طراح مجاز به آن باشد.

چرا برنامهٔ شما یک نسخه نگه می‌دارد​

سند برنامهٔ گذارنده را باز کنید: گره‌های مؤلفه در آن هست، با شناسه‌هایی که با sc_ شروع می‌شوند، به اضافهٔ تعریفی که می‌گوید از کدام برنامه آمده، آن‌جا چه نام دارد و کدام بازنگری است.

آن نسخه اشتباه نیست و شما هرگز نگهش نمی‌دارید. دو چیز می‌خرد:

  • برنامهٔ شما خودبسنده است. به‌تنهایی اعتبارسنجی، بسته‌بندی، وارد و ترجمه می‌شود. مؤلفه‌ای که نتوانسته سفر کند، برنامه‌ای عقب‌مانده بر جای می‌گذارد، نه برنامه‌ای که رندر نمی‌شود.
  • آنچه فرستاده شده همان است که رندر می‌شود. برنامه‌ای که مؤلفه‌هایش را هنگام باز شدن می‌گرفت نمی‌توانست این را قول دهد.

نسخهٔ اصل، سمت چپِ طرح شما روی یک «قفسه» می‌نشیند و هرگز روی صفحه نمی‌آید: تعریف است، نه محتوا. فقط نمونه‌هایی که گذاشته‌اید رندر می‌شوند.

خاموش کردن هم‌رسانی​

تیک را بردارید و مؤلفه‌های آن برنامه دیگر پیشنهاد نمی‌شوند. برنامه‌هایی که پیش‌تر یکی را گذاشته‌اند آن را نگه می‌دارند: نسخهٔ پیوندی‌شان دقیقاً همان‌طور می‌ماند، منجمد بر همان بازنگری‌ای که کپی کرده‌اند. همان چیزی که هنگام حذف نصبِ یک برنامه رخ می‌دهد، و به همان دلیل — برنامه‌ای نباید بخشی از صفحه‌اش را از دست بدهد چون کسِ دیگری یک تنظیم را عوض کرده است.

آنچه آن برنامه‌ها از دست می‌دهند به‌روزرسانی است: دیگر چیزی نسخه‌شان را جلو نمی‌برد، چون پالت چیزی برای مقایسه با آن ندارد.

تنها مؤلفه‌ای که نمی‌توانید جای دیگر ببرید​

مؤلفه‌ای که وضعیتِ صفحهٔ برنامهٔ خودش را می‌خواند. ردیفش در پنل برنامهٔ دیگر هست، خاکستری، و عبارت را نام می‌برد — مثلاً state.showCard.

قاعده‌ای دلبخواه نیست. مؤلفهٔ شما روی صفحه‌هایی می‌نشیند که چنین فیلد وضعیتی ندارند، پس آن عبارت وابستگی به چیزی است که ممکن است نباشد و روی هر صفحه‌ای که ندارد شکست می‌خورد. به‌جایش آنچه لازم دارد را به‌صورت یک ویژگی نمایان کنید تا برنامهٔ گذارنده پرش کند — ببینید استفادهٔ دوباره از یک طرح با مؤلفه‌ها.

درون برنامه‌ای که آن را کشیده، همان مؤلفه دقیقاً مثل همیشه کار می‌کند. محدودیت دربارهٔ عبور از مرز است، و دقیقاً یک بار حس می‌شود، همان‌جا که می‌توان توضیحش داد.

حذف کردنش​

مؤلفه را روی بوم برنامه‌ای که آن را کشیده حذف کنید و ذخیره را بزنید.

اگر برنامه‌های دیگری آن را گذاشته باشند، اول از شما پرسیده می‌شود و پرسش نامشان را می‌برد. حذف آن، مؤلفه را از آن برنامه‌ها هم برمی‌دارد — چون در غیر این صورت آن‌ها کارتی را می‌کشند که هیچ‌کس نمی‌تواند بازش کند: پالت دیگر پیشنهادش نمی‌دهد و هیچ طراحی به آن نمی‌رسد.

لغو هیچ چیزی نمی‌نویسد، نه این‌سو نه آن‌سو. بوم شما دقیقاً همان‌طور می‌ماند، با حذف و همه چیز، پس راه بازگشت «واگرد» است.

امتحانش کنید​

نمونهٔ studio-shared-components را وارد کنید. دو برنامه دارد: «محصولات» که کارت آماری را می‌کشد، و «سفارش‌ها» که آن را می‌گذارد. کارت را در محصولات تغییر دهید، ذخیره کنید و سفارش‌ها را باز کنید.

مرتبط​