pooria vakili
pooria vakili
خواندن ۳ دقیقه·۲ سال پیش

تغییرات در vue 3.3


ویوجی اس 3.3 چه تغییراتی کرده است؟
این نسخه فوکوس یا اشاره کرده است که کسانی ویوجی اس با تایپ اسکریپت
کار می کنند
Dependency Updates
When upgrading to 3.3, it is recommended to also update the following dependencies:
volar / vue-tsc@^1.6.4
vite@^4.3.5
@vitejs/plugin-vue@^4.2.0
vue-loader@^17.1.0 (if using webpack or vue-cli)
<script setup> + TypeScript DX Improvements
Imported and Complex Types Support in Macros
در ویو جی اس از defineprops,defineemits پوزیشنی که به صورت تایپ می توانید استفاده کنیدوهر دوتایپ وinterface در تایپ اسکریپت پشتیبانی می کند


کامپونت جنریک
در این کامپونت تایپ وپارامتر واون صفتی که دارید به صورت جنریک بفرستی

این value اینطور کار می کند بعضی مقدار در تایپ اسکریپت بتواند بگیرد به این حالت<....>
برای مثال شما می توانید پارامترهای چندین حالته استفاده کنید وextends محدودیت تایپ دارد ودر ریفرنس انواع وارداتی ها استفاده کنید
به این کد توجه کنید



این ویژگی در آخرین نسخهvue-tsc فعال است
در این پارامتر defineemits از پشتیبانی وارتباط برقرار می کند با سینتکس سیگنالتور

تایپ می توانید برگردانید برای جایی که emit استفاده کردید اما این به صورت پر مخاطره نوشته شده است وبه صورت ارگومیک تری ان را معرفی می کند



Save translation
در نوع literal، کلید نام رویداد و مقدار آن یک نوع آرایه است که آرگومان های اضافی را مشخص می کند. .
تایپ اسلات با define slot
این define slot یک ماکروجدیدی که می توانید استفاده کنید اسلات های مربوطه اعلام واستفاده کنید



defineSlots() فقط یک پارامتر نوع و هیچ آرگومان زمان اجرا را می پذیرد.پارامتر نوع باید یک نوع literal باشد که در آن کلید ویژگی نام شکاف استاولین آرگومان تابع پروپ هایی است که اسلات انتظار دریافت آن را دارد و نوع آن برای شیارهای موجود در قالب استفاده می شود. مقدار برگشتی defineSlots همان شیء اسلات است که از useSlots برگردانده شده است
بررسی اسلات های مورد نیاز هنوز در vue tsc هنوز اجرا نشده است
نوع بازگشت تابع اسلات در حال حاضر نادیده گرفته شده است و می تواند هر کدام باشد، اما ممکن است در آینده از آن برای بررسی محتوای اسلات استفاده کنیم
ویژگی های تجربی
پیش از این بخشی از ساختار Reactivity Transform که اکنون حذف شده بود، به یک ویژگی جداگانه تقسیم شده است.
به این کد توجه کنید



define model

قبلا این کامپونتی بود که v-model از two-way biniding پشتیبانی می کرد آن نیاز می شود در جای که props ,emit استفاده می کنیم واین متناظربا موقعی که event پشتیبانی می کنیم واون props به روز کنیم

استفاده از ماکرو جدید define model این کار ساده کرده است این ماکرو میتواند props اتوماتیک رجیستر کند وبرگرداند در ref و می تواند با muted مستقیم ارتباط برقرار کند

define options

این define options یک ماکروی که اجازه می دهد مستقیم با options script setup در تماس باشید

می توانید با toref مثل یک ارتباط دهنده با computed در ارتباط باشید یک value جدید ایجاد کنید واون بااستفاده از inject استفاده کنید

این tovalue را می توان به جای unref استفاده کرد ومی توانید داده به صورت getter بگیرید بپذیرد و تغییردهید ودیتا سورس ها به صورت ریکتیو نشان دهید

رابطه toref ,tovalue مشابه رابطه بین ref,unref است که تفاوت ان در مدیریت خاص گیرنده است

برگرفته شده و ترجمه شده از این مقاله است

https://blog.vuejs.org/posts/vue-3-3






vuejstsvuetsctypescript
front-end developer
شاید از این پست‌ها خوشتان بیاید