国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Rumah hujung hadapan web tutorial js Cara kami berhijrah dari Vue o Vue 3

Cara kami berhijrah dari Vue o Vue 3

Nov 13, 2024 am 07:51 AM

How we migrated from Vue o Vue 3

Kira-kira setahun yang lalu kami akhirnya berhijrah dari Vue 2 ke Vue 3. Ia adalah 6 bulan sebelum tamat hayat rasminya. Pada masa itu, apl kami mempunyai sekitar 100 halaman dan 300 komponen, dan menggunakan beberapa kebergantungan klasik yang terikat dengan Vue: Vue-router, Pinia (dan Pinia ORM), Vue-i18n, TipTap, ElementUI (ElementPlus untuk Vue 3)

Berikut adalah beberapa nasihat yang membantu kami. Memandangkan Vue 2 masih berfungsi dengan baik, lebih baik anda luangkan masa untuk meredakan pemindahan daripada tergesa-gesa, merosakkan apl anda dan memusnahkan moral anda!


1?? Sebelum bermula

Beri amaran kepada orang lain

Benda pasti akan rosak, walaupun sedikit. Anda lebih baik pastikan ia ok dengan pasukan lain.

Naik taraf kepada Vue 2.7 terkini

Jelas sekali, kerana kebanyakan ciri baharu tersedia dalam Vue 2.7, dan serasi semula, adalah penting untuk mengejar ketinggalan jika anda belum memilikinya. Semasa berhijrah ke Vue 3, anda masih boleh menikmati ciri-cirinya. Langkah untuk berhijrah juga akan menjadi lebih kecil.

Ambil masa

Ini boleh menjadi kerja yang agak besar jadi anda lebih baik menjangkakan untuk mengurangkan risiko dalam tempoh yang lama. Selain itu, ia membantu kami (pemaju) mengekalkan moral! Rancang beberapa minggu atau bulan, seperti yang anda tahu bila anda mula, tetapi anda tidak tahu bila anda akan selesai... Akhir sekali, lebih baik anda meluangkan sedikit masa setiap minggu, jadi sebarang gangguan tidak akan membawa bencana.

Buat pasukan

Jangan bergantung hanya pada satu pembangun jika boleh, kerana ia adalah tugas yang meletihkan. Selain itu, anda memerlukan maklum balas pantas & menggabungkan gelung, kerana banyak perubahan akan menjejaskan keseluruhan pangkalan kod dan boleh mewujudkan konflik setiap hari. Ia sudah cukup sukar tanpa perlu mengendalikan ini!

Penghijrahan yang dipacu ujian

Separuh masa akan diluangkan untuk menguji keseluruhan apl, jadi lebih baik anda mengautomasikannya sebaik mungkin. Mengikut pengalaman kami:

  • Ujian unit tidak begitu berguna, kerana ia biasanya menguji perkara yang tidak benar-benar terikat dengan Vue (hanya fungsi "JS tulen" contohnya), kami tidak menumpukan padanya
  • Ujian komponen dengan vue-test-utils adalah sukar untuk berhijrah, akhirnya kami terpaksa melumpuhkan sebahagian daripadanya
  • Ujian hujung ke hujung adalah yang paling berharga kerana ia tidak terikat dengan mana-mana dalaman JS atau Vue dan gagal sebaik sahaja ralat dibuang dalam apl

Kesimpulannya yang terbaik ialah mencipta apa yang dipanggil "ujian asap", di mana anda hanya menavigasi dalam aplikasi dengan senario paling asas yang boleh anda fikirkan. Pastikan ia mudah, supaya ia pantas, kerana lebih cepat anda boleh membuatnya berjalan, jadi lebih berguna ia. Mata bonus jika ia dijalankan sebelum bergabung (dalam CI misalnya).

Taip semua

TypeScript membantu sedikit, tetapi sokongan untuknya dalam Vue 2 masih lemah. Menggunakan TypeScript masih merupakan idea yang baik, tetapi ia mungkin tidak terlalu membantu di sana; Setelah menggunakan Vue 3, sintaks persediaan akan menjadi kawan baik anda!

Lit semuanya

Ia jelas, tetapi banyak perubahan akan berlaku dalam kod, begitu juga dengan banyak ralat. ESLint / Prettier yang ringkas boleh menjimatkan banyak masa. Jika anda sudah memilikinya, anda boleh menyemak peraturan baharu untuk Vue 3 sementara anda berhijrah: https://eslint.vuejs.org/rules/

Gunakan Vite

Kami telah pun berhijrah daripada Webpack ke Vite sebelum mula memindahkan Vue, jadi saya tidak pasti ia banyak membantu, tetapi memandangkan ia adalah standard yang jelas hari ini, sesetengah pemalam mungkin tidak memberikan arahan untuk naik taraf dengan Webpack. Saya rasa lebih selamat untuk melakukannya dahulu kerana Vite menyokong Vue 2, tetapi sebaliknya ekosistem Vue 3 mungkin tidak menyokong Webpack.


2?? Langkah kecil dahulu

Matlamatnya adalah untuk mendapatkan sedikit perubahan yang mungkin apabila benar-benar meningkatkan Vue itu sendiri.

Tingkatkan kebergantungan

Lihat setiap pergantungan berkaitan Vue yang anda gunakan, dan semak sama ada terdapat versi yang menyokong kedua-dua Vue 2 dan Vue 3, dan naik taraf kepadanya. Vue-demi banyak membantu penyelenggara pemalam untuk mencapainya, jadi ada kemungkinan besar ia tersedia.

Sebagai contoh, anda mungkin ingin berhijrah daripada Vuex ke Pinia, yang menyokong kedua-dua versi (Vuex masih memerlukan penghijrahan kecil) dan tetap merupakan standard baharu.

Gantikan kebergantungan

Untuk kebergantungan lain, anda mungkin ingin menyemak sama ada sebarang alternatif moden sesuai dengan keperluan anda. Sebagai contoh, kami menggantikan vue-mq dengan vue-use.

Monkeypatch apabila diperlukan

Kami perlu bersikap pragmatik, jadi memandangkan beberapa migrasi lebih sukar daripada yang lain, kami akhirnya mencipta lapisan kecil abstraksi untuk membetulkannya. Sebagai contoh, kami menghadapi masa yang sukar dengan vue-i18n v9 yang membawa beberapa perubahan (kadangkala tidak didokumentasikan). Jadi kami akhirnya mencipta pembantu yang mendedahkan versi tersuai $t untuk mengelakkan daripada menulis semula setiap komponen (kerana fungsi yang paling banyak digunakan ini kini tidak menerima nilai "batal" pada dasarnya tanpa sebab). Dalam istilah lain, jangan terlalu perfeksionis!


3?? Mula berhijrah

Sekarang kerja keras bermula. Semua yang kita lakukan sebelum ini akan mengurangkan kesakitan. Tiada keajaiban di sini, ia mungkin merupakan bahagian yang paling sukar dalam penghijrahan.

Ubah segala-galanya, tetapi tiada apa-apa

Ganti Vue 2 oleh Vue 3 dengan "binaan migrasi" (juga dipanggil mod kompati) dengan mengikut arahan.

Matikan setiap bendera yang tersedia supaya apl berjalan hampir seperti yang dilakukan dengan versi 2.

Pastikan bahawa tiada perubahan yang rosak menjejaskan apl anda atau betulkan perubahan tersebut.

Langkah kecil

Dayakan setiap bendera secara berperingkat dan uji apl dengan teliti. Jika sesetengah komponen terlalu sukar untuk dipindahkan, perlu diingat bahawa anda boleh mengatasi pilihan keserasiannya; jadi lebih baik anda menggabungkan segala-galanya tetapi menyimpan beberapa komponen untuk berhijrah kemudian daripada menunggu seluruh apl berfungsi sekarang. Jangan cuba membetulkan semuanya sekaligus, biarkan beberapa hari berlalu supaya anda boleh menangkap sebarang pepijat (dan memulihkan kesihatan mental anda).

Langkah besar

Sesetengah kebergantungan tidak menyediakan pintasan. Dalam kes kami, memindahkan perpustakaan UI kami daripada ElementUI (Vue 2) kepada ElementPlus (Vue 3) adalah sukar dan tidak boleh dibahagikan kepada langkah yang lebih kecil. Saya dengar ia lebih sukar untuk Vuetify. Untuk ini, anda perlu kuat, sabar, dan mengambil masa untuk melakukannya sekaligus. Mungkin biarkan seminggu penuh untuknya dalam kalendar pasukan anda!

Ingat bahawa anda masih boleh mengatasi kelakuan keserasian setiap komponen yang anda import semasa masa jalan:

import { ElButton } from 'element-plus'

ElButton.compatConfig = {
  FEATURE_ID_A: true // features can also be toggled at component level
}

Langkah terakhir

Setelah setiap bendera dihidupkan, tiba masanya untuk mengalih keluar binaan migrasi. Semoga anda tidak akan menemui isu baharu yang tidak dijangka sekarang!

Jangan lupa untuk meraikannya, anda berhak mendapatnya! ?

Atas ialah kandungan terperinci Cara kami berhijrah dari Vue o Vue 3. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Java vs JavaScript: Membersihkan kekeliruan Java vs JavaScript: Membersihkan kekeliruan Jun 20, 2025 am 12:27 AM

Java dan JavaScript adalah bahasa pengaturcaraan yang berbeza, masing -masing sesuai untuk senario aplikasi yang berbeza. Java digunakan untuk pembangunan aplikasi perusahaan dan mudah alih yang besar, sementara JavaScript digunakan terutamanya untuk pembangunan laman web.

Komen JavaScript: Penjelasan ringkas Komen JavaScript: Penjelasan ringkas Jun 19, 2025 am 12:40 AM

JavaScriptcommentsareessentialformaintaining,reading,andguidingcodeexecution.1)Single-linecommentsareusedforquickexplanations.2)Multi-linecommentsexplaincomplexlogicorprovidedetaileddocumentation.3)Inlinecommentsclarifyspecificpartsofcode.Bestpractic

Bagaimana untuk bekerja dengan tarikh dan masa di JS? Bagaimana untuk bekerja dengan tarikh dan masa di JS? Jul 01, 2025 am 01:27 AM

Titik berikut harus diperhatikan apabila tarikh pemprosesan dan masa di JavaScript: 1. Terdapat banyak cara untuk membuat objek tarikh. Adalah disyorkan untuk menggunakan rentetan format ISO untuk memastikan keserasian; 2. Dapatkan dan tetapkan maklumat masa boleh diperoleh dan tetapkan kaedah, dan ambil perhatian bahawa bulan bermula dari 0; 3. Tarikh pemformatan secara manual memerlukan rentetan, dan perpustakaan pihak ketiga juga boleh digunakan; 4. Adalah disyorkan untuk menggunakan perpustakaan yang menyokong zon masa, seperti Luxon. Menguasai perkara -perkara utama ini secara berkesan dapat mengelakkan kesilapan yang sama.

Kenapa anda harus meletakkan tag  di bahagian bawah ? Kenapa anda harus meletakkan tag di bahagian bawah ? Jul 02, 2025 am 01:22 AM

PlacingtagsatthebottomofablogpostorwebpageservespracticalpurposesforSEO,userexperience,anddesign.1.IthelpswithSEObyallowingsearchenginestoaccesskeyword-relevanttagswithoutclutteringthemaincontent.2.Itimprovesuserexperiencebykeepingthefocusonthearticl

JavaScript vs Java: Perbandingan Komprehensif untuk Pemaju JavaScript vs Java: Perbandingan Komprehensif untuk Pemaju Jun 20, 2025 am 12:21 AM

JavaScriptispreferredforwebdevelopment, whersjavaisbetterforlarge-scalebackendsystemsandandroidapps.1) javascriptexcelsinceleatinginteractiveWebexperienceswithitsdynamicnatureanddommanipulation.2) javaoffersstrongyblectionandobjection

JavaScript: Meneroka jenis data untuk pengekodan yang cekap JavaScript: Meneroka jenis data untuk pengekodan yang cekap Jun 20, 2025 am 12:46 AM

JavascripthassevenfundamentalDatypes: nombor, rentetan, boolean, undefined, null, objek, andsymbol.1) numberuseadouble-precisionformat, bergunaforwidevaluangesbutbecautiouswithfloating-pointarithmetic.2)

Apakah peristiwa yang menggelegak dan menangkap di Dom? Apakah peristiwa yang menggelegak dan menangkap di Dom? Jul 02, 2025 am 01:19 AM

Penangkapan dan gelembung acara adalah dua peringkat penyebaran acara di Dom. Tangkap adalah dari lapisan atas ke elemen sasaran, dan gelembung adalah dari elemen sasaran ke lapisan atas. 1. Penangkapan acara dilaksanakan dengan menetapkan parameter useCapture addeventlistener kepada benar; 2. Bubble acara adalah tingkah laku lalai, useCapture ditetapkan kepada palsu atau ditinggalkan; 3. Penyebaran acara boleh digunakan untuk mencegah penyebaran acara; 4. Acara menggelegak menyokong delegasi acara untuk meningkatkan kecekapan pemprosesan kandungan dinamik; 5. Penangkapan boleh digunakan untuk memintas peristiwa terlebih dahulu, seperti pemprosesan pembalakan atau ralat. Memahami kedua -dua fasa ini membantu mengawal masa dan bagaimana JavaScript bertindak balas terhadap operasi pengguna.

Apa perbezaan antara Java dan JavaScript? Apa perbezaan antara Java dan JavaScript? Jun 17, 2025 am 09:17 AM

Java dan JavaScript adalah bahasa pengaturcaraan yang berbeza. 1.Java adalah bahasa yang ditaip dan disusun secara statik, sesuai untuk aplikasi perusahaan dan sistem besar. 2. JavaScript adalah jenis dinamik dan bahasa yang ditafsirkan, terutamanya digunakan untuk interaksi web dan pembangunan front-end.

See all articles