اجرای برنامهٔ استودیو بهتنهایی
هدف
برنامهای را که کشیدهاید همچون یک برنامهٔ مستقل باز کنید — از فهرست پوسته، بدون هیچ چیز گرد آن جز نوار بالای خود پلتفرم.
چرا چنین چیزی هست
برنامهٔ استودیو صفحهای درون چیز دیگری نیست. صفحههای خودش را دارد و میانشان جابهجا میشود، پس برای یکپارچه بودن به ریل ناوبری، نقشهٔ سایت یا برنامهٔ مدلمحور نیازی ندارد. همین است که بعدها آن را برای جلوی یک پورتال به کار میآورد، و به همین دلیل کنار برنامههای دیگر شما در فهرست برنامهها ظاهر میشود، نه فقط درون یکی از آنها.
هر دو راه رسیدن واقعیاند و برای هر برنامه خودتان انتخاب میکنید:
| راه رسیدن | چه شکلی است | کِی |
|---|---|---|
| بهتنهایی، از فهرست برنامهها | طرح شما، تمامعرض، بدون ریل | خودِ برنامه همان صفحههای کشیدهشده است |
| درون ناوبری یک برنامهٔ مدلمحور | ریلی از جدولها کنار طرح شما | طرح، صفحهٔ فرودی روی رکوردهاست — ببینید بازکردن برنامهٔ استودیو از یک برنامهٔ مدلمحور |
پیشنیازها
- یک برنامهٔ استودیو که کشیده و ذخیره کردهاید — ببینید کشیدن یک صفحهٔ استودیو.
- همان محیطی که در آن ساخته شده، یا محیطی که راهحلش د ر آن وارد شده است.
گامها
- پوستهٔ پلتفرم را باز کنید و مطمئن شوید انتخابگر محیط روی محیطی است که برنامه در آن است.
- در فهرست برنامهها، برنامهٔ خود را پیدا کنید. زیر نشان آن نوشته است برنامهٔ استودیو.
- آن را بفشارید. برنامه روی صفحهٔ آغازین باز میشود — همان که در طراح، در باز میشود با، نام بردهاید.
- با دکمههایی که کشیدهاید در آن بگردید. هر
navigate("…")شما را به همان صفحه میبرد.
نوار نشانی بخشی از آن است
هر صفحه نشانی خودش را دارد: /apps/<برنامهٔ شما>/<نام صفحه>. این تزئین نیست —
- بازگشتِ مرورگر به صفحهٔ پیشین برمیگردد، نه بیرونِ برنامه؛
- بارگذاری دوباره به همان صفحهای بازمیگردد که رویش بودید؛
- پیوندی که کپی میکنید برای گیرنده هم همانجا باز میشود.
نام صفحه در نشانی همان نام روی قاب است، پس صفحهای به نام Order details بهصورت
Order%20details خوانده میشود — املای مرورگر برای یک فاصله.
آنچه یک پیوند نمیتواند حمل کند مقداری است که با navigate("Details", { id }) دست به دست شده.
اینها در همان لحظه میان دو صفحه سفر میکنند؛ رسیدن با بازگشت، با بارگذاری دوباره یا با پیوندی
چسباندهشده، صفحه را با screen.params خالی باز میکند. اگر صفحهای باید بر پایهٔ آنچه نشان
میدهد قابل رسیدن باشد، آن یک صفحهٔ پورتال با نشانی طراحیشده است، نه یک تحویل دستی.
چه کسی میتواند بازش کند
باز کردن یک برنامه یک دسترسی است که هنگام گرفتن سند بررسی میشود — همان دسترسی، چه برنامه بهتنهایی باز شود چه از درون یک برنامهٔ مدلمحور. به کاربری که دسترسی ندارد گفته میشود که اجازه ندارد، نه اینکه صفحهای سفید ببیند.
توجه کنید که دسترسی برای هر برنامه است، نه برای هر صفحه. دو صفحه که باید دو گروه متفاوت ب بینند، دو برنامهاند، یا یک برنامه که آنچه را کسی نباید ببیند پنهان میکند — و پنهانکردن در یک طرح ادب است، نه امنیت: آنچه واقعاً از یک رکورد محافظت میکند، دسترسی روی خود رکورد است.
برنامه تنها برای کسی در فهرست برنامهها دیده میشود که اجازهٔ بازکردنش را دارد. برای سپردن برنامه به دیگران، آن را زیر برنامههای استودیو برگزینید و اشتراکگذاری را بزنید. همان پنلی است که برای برنامهٔ مدلمحور: نقشهایی را که برنامه برای آنهاست تیک بزنید، و کسانی که آن را میگیرند نام کسانی را که به آنها میرسد نشان میدهد. نگاه کنید به سپردن برنامه به کسانی که از آن استفاده میکنند.
پرکردن پنجره: پنهانکردن نوار سکو
یک برنامه میتواند از پوسته بخواهد هیچیک از عناصر خودش را نشان ندهد — نه نوار بالا، نه گزینگر محیط، نه انتخاب زبان یا پوسته و نه منوی کاربر. روی برنامه (برنامههای استودیو ← برنامهٔ شما ← ویرایش) گزینهٔ پنهان کردن نوار سکو را بزنید. تا روشنش نکنید خاموش است.
اول اینها را در خود برنامه بکشید. آنچه این گزینه برمیدارد تنها راه بیرونرفتن از محصول است، پس برنامهای که جای نوار را میگیرد باید آنچه را نوار داشت با خود بیاورد:
| نوار سکو چه دارد | صفحه چه میتواند بکشد |
|---|---|
| کاربر واردشده و عکس او | user.name، user.email، و تصویری که بستِ تصویر آن user.photo است |
| روشن و تاریک | setTheme("dark") / setTheme("light")، و ui.theme برای خواندن حالت کنونی |
| خروج از سامانه | signOut() |
| گزینگر محیط | هیچ — و همین دلیلِ روشنگذاشتن نوار برای هر چیزی است که یک سازنده به کار میبرد |
نمونهٔ میز پشتیبانی همهٔ اینها را دارد؛ بازش کنید و نوار بالایش را ببینید.
برای برنامهای که آشکارا بخشی از یک مجموعه نیست به کار ببرید — کیوسک، نمایشگری روی دیوار، ابزاری تکمنظوره — یا جایی که نوار بالای خودتان درست زیر نوار سکو مینشیند و آن دو مثل یک چیزِ دوبار خوانده میشوند.
بردنش به محیطی دیگر
برنامه در راهحل خود جابهجا میشود، مثل هر مؤلفهٔ دیگر. از محیطی که ساختهاید صادرش کنید و در محیط بعد واردش کنید؛ برنامه بدون هیچ گام دیگری در فهرست برنامههای آن محیط ظاهر میشود. پیوندها پس از جابهجایی کار میکنند، چون نشانی یک برنامه نام منطقی آن است نه شناسهای که عوض میشود.
عیبیابی
- برنامه در فهرست نیست. — در محیط اشتباهی هستید، یا راهحلش اینجا وارد نشده. اول انتخابگر محیط را ببینید.
- روی صفحهٔ اشتباهی باز میشود. — باز میشود با در طراح، صفحهٔ آغازین را نام میبرد. برنامه را در طراح باز کنید، بررسی و ذخیره کنید.
- دکمهای میگوید این برنامه چنین صفحهای ندارد. — نام قاب پس از نوشتن دستگیره عوض شده. پیام میگوید چه چیزی خواسته شده؛ یا نام قاب را برگردانید یا دستگیره را درست کنید.
- برنامه میگوید باز نشد. — نقش شما هیچ دسترسیای روی آن ندارد. باز کردن یک برنامه هم دسترسیای است مثل بقیه؛ از مسئول نقشهای امنیتی بخواهید.
- بازگشت بهجای صفحهٔ قبلی، از برنامه بیرون میرود. — مستقیم روی همان صفحه رسیدهاید (پیوندی چسباندهشده، یا بارگذاری دوباره)، پس در تاریخچهٔ این برنامه چیزی پیش از آن نیست.
- راهی برای بیرونرفتن از برنامه نیست. — پنهان کردن نوار سکو روشن است و برنامه خودش خروجی
نکشیده. یا خاموشش کنید یا دکمهای بگذارید که دستگیرهاش
signOut()را صدا بزند. - عکس در نوار بالای من خالی است. — آن شخص در نمایهٔ خود عکسی ندارد، که حالت عادی است. بستِ
نمایش تصویر را
user.photo != ""بگذارید و پشتش دایرهای رنگی بکشید، همانگونه که نمونه میکند.