


Bagaimana untuk menyesuaikan projek Vite ke skrin? Dua pilihan untuk dikongsi
Bagaimana untuk menyesuaikan projek Vite ke skrin? Artikel berikut akan berkongsi dengan anda dua penyelesaian untuk penyesuaian skrin projek Vite Ia sangat terperinci.
Baru-baru ini, Xiaomei, seorang pelajar dalam pasukan projek, nampaknya menghadapi masalah yang sukar, dan dia sentiasa kelihatan tertekan.
Dengan niat bahawa kita semua adalah pasukan projek dan harus membantu antara satu sama lain dan menyelesaikan masalah bersama-sama, saya menghantar mesej kepada Xiaomei.
Saya: "Saya lihat anda tidak begitu gembira sejak kebelakangan ini. Adakah anda menghadapi sebarang masalah?" dan menemui maklumat dalam talian Semuanya berkaitan dengan vue2 webpack. Saya tidak tahu cara menyesuaikannya dengan projek vite o(╥﹏╥)o? [Cadangan berkaitan:
tutorial video vuejs]Saya: "Baiklah, serahkan pada abang, saya akan tolong kamu selesaikan
Xiaomei: "❤( ´ ・ᴗ・` )❤”
Jika anda rasa artikel itu bagus atau membantu perkembangan anda sendiri, sila like dan kumpulkan! ❤❤❤penyelesaian penyesuaian berasaskan rem
Apakah rem?
rem merujuk kepada unit saiz fon berbanding elemen akar Dalam proses pembangunan harian, kami biasanya menetapkan fon elemen akar (html/body) kepada 10px, yang sesuai untuk. kita untuk mengira (pada masa ini 1rem elemen kanak-kanak adalah bersamaan dengan 10px).
Senario yang berkenaanAplikasi web tanpa nisbah bidang tetap, sesuai untuk kebanyakan senario perniagaan
1. Kebergantungan pemasangan
npm i postcss-pxtorem autoprefixer amfe-flexible --save-dev
Pemalam pemprosesan awalan penyemak imbas autoprefixerFailpenyelesaian susun atur berskala amfe-flexible menggantikan
yang serasi pada masa ini 2. Cipta direktori akar projek
asal dan menggunakanlib-flexible
viewport
postcss.config.js
module.exports = { plugins: { autoprefixer: { overrideBrowserslist: [ "Android 4.1", "iOS 7.1", "Chrome > 31", "ff > 31", "ie >= 8", "last 10 versions", // 所有主流浏览器最近10版本用 ], grid: true, }, "postcss-pxtorem": { rootValue: 192, // 设计稿宽度的1/ 10 例如设计稿按照 1920设计 此处就为192 propList: ["*", "!border"], // 除 border 外所有px 转 rem selectorBlackList: [".el-"], // 过滤掉.el-开头的class,不进行rem转换 }, }, };
main.ts/js
import "amfe-flexible/index.js";
Dalam CSS3, kita boleh menggunakan kaedah skala() atribut transformasi untuk mencapai kesan penskalaan elemen. Zum merujuk kepada maksud "zum keluar" dan "zum masuk".
transformasi: skalaX(x); / Skala sepanjang arah paksi-x/ubah: skalaY(y); / Skala sepanjang arah paksi-y/- transform : scale(); / Skala sepanjang paksi-x dan paksi-y secara serentak/
- Senario yang boleh digunakan
Aplikasi web dengan aspek tetap nisbah, seperti skrin besar atau aplikasi perniagaan tetingkap tetap
Amalan projek
1 Cipta fail baharu 🎜>
resize.ts/js
import { ref } from "vue"; export default function windowResize() { // * 指向最外层容器 const screenRef = ref(); // * 定时函数 const timer = ref(0); // * 默认缩放值 const scale = { width: "1", height: "1", }; // * 设计稿尺寸(px) const baseWidth = 1920; const baseHeight = 1080; // * 需保持的比例(默认1.77778) const baseProportion = parseFloat((baseWidth / baseHeight).toFixed(5)); const calcRate = () => { // 当前宽高比 const currentRate = parseFloat( (window.innerWidth / window.innerHeight).toFixed(5) ); if (screenRef.value) { if (currentRate > baseProportion) { // 表示更宽 scale.width = ( (window.innerHeight * baseProportion) / baseWidth ).toFixed(5); scale.height = (window.innerHeight / baseHeight).toFixed(5); screenRef.value.style.transform = `scale(${scale.width}, ${scale.height})`; } else { // 表示更高 scale.height = ( window.innerWidth / baseProportion / baseHeight ).toFixed(5); scale.width = (window.innerWidth / baseWidth).toFixed(5); screenRef.value.style.transform = `scale(${scale.width}, ${scale.height})`; } } }; const resize = () => { clearTimeout(timer.value); timer.value = window.setTimeout(() => { calcRate(); }, 200); }; // 改变窗口大小重新绘制 const windowDraw = () => { window.addEventListener("resize", resize); }; // 改变窗口大小重新绘制 const unWindowDraw = () => { window.removeEventListener("resize", resize); }; return { screenRef, calcRate, windowDraw, unWindowDraw, }; }
resize.ts/js
Syorkan projek sumber terbuka yang melibatkan dua pengarang Projek, jika projek itu membantu anda, selamat datang ke bintang!
<template> <div> <div> <span>基于scale的适配方案</span> <img src="/static/imghw/default1.png" data-src="https://img2.baidu.com/it/u=1297807229,3828610143&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=281" class="lazy" alt="Bagaimana untuk menyesuaikan projek Vite ke skrin? Dua pilihan untuk dikongsi" > </div> </div> </template> <script> import windowResize from '../../utils/resize'; import {onMounted, onUnmounted} from 'vue'; const { screenRef, calcRate, windowDraw, unWindowDraw } = windowResize() onMounted(() => { // 监听浏览器窗口尺寸变化 windowDraw() calcRate() }) onUnmounted(() => { unWindowDraw(); }) </script> <style> .screen-container { height: 100%; background-color: lightcyan; display: flex; justify-content: center; align-items: center; .screen-content { width: 1920px; height: 1080px; background-color: #fff; display: flex; justify-content: center; align-items: center; flex-direction: column; .screen-title { font-size: 32px; } .screen-img { margin-top: 20px; } } } </style>
:
www.xkxk.techYang ringkas berdasarkan Vue3, Vite后台管理项目
: screen.xkxk.tech
(Belajar perkongsian video: 炫酷大屏项目
pembangunan bahagian hadapan web, Video pengaturcaraan asas
Atas ialah kandungan terperinci Bagaimana untuk menyesuaikan projek Vite ke skrin? Dua pilihan untuk dikongsi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

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

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Menggunakan bootstrap dalam vue.js dibahagikan kepada lima langkah: Pasang bootstrap. Import bootstrap di main.js. Gunakan komponen bootstrap secara langsung dalam templat. Pilihan: Gaya tersuai. Pilihan: Gunakan pemalam.

Anda boleh menambah fungsi ke butang VUE dengan mengikat butang dalam templat HTML ke kaedah. Tentukan kaedah dan tulis logik fungsi dalam contoh Vue.

Pilihan Watch di Vue.js membolehkan pemaju mendengar perubahan dalam data tertentu. Apabila data berubah, tontonkan mencetuskan fungsi panggil balik untuk melakukan paparan kemas kini atau tugas lain. Pilihan konfigurasinya termasuk segera, yang menentukan sama ada untuk melaksanakan panggilan balik dengan serta -merta, dan mendalam, yang menentukan sama ada untuk mendengarkan secara rekursif terhadap objek atau tatasusunan.

Pembangunan pelbagai halaman Vue adalah cara untuk membina aplikasi menggunakan rangka kerja VUE.JS, di mana permohonan dibahagikan kepada halaman berasingan: Penyelenggaraan kod: Memisahkan aplikasi ke dalam beberapa halaman boleh menjadikan kod lebih mudah untuk dikendalikan dan diselenggarakan. Modularity: Setiap halaman boleh digunakan sebagai modul yang berasingan untuk penggunaan semula dan penggantian mudah. Routing mudah: Navigasi antara halaman boleh diuruskan melalui konfigurasi penghalaan mudah. Pengoptimuman SEO: Setiap halaman mempunyai URL sendiri, yang membantu SEO.

Terdapat tiga cara untuk merujuk kepada fail JS dalam vue.js: Secara langsung tentukan jalan menggunakan & lt; skrip & gt; tag ;; import dinamik menggunakan cangkuk kitaran hayat yang dipasang (); dan mengimport melalui Perpustakaan Pengurusan Negeri VUEX.

Vue.js mempunyai empat kaedah untuk kembali ke halaman sebelumnya: $ router.go (-1) $ router.back () menggunakan & lt; router-link to = & quot;/& quot; Komponen Window.History.Back (), dan pemilihan kaedah bergantung pada tempat kejadian.

Terdapat dua cara untuk melompat elemen div di Vue: Gunakan Vue Router dan tambahkan komponen router-link. Tambah pendengar acara @Click dan panggil ini. $ Router.push () kaedah untuk melompat.

Terdapat tiga kaedah umum untuk vue.js untuk melintasi tatasusunan dan objek: Arahan V-untuk digunakan untuk melintasi setiap elemen dan membuat templat; Arahan V-mengikat boleh digunakan dengan V-untuk menetapkan nilai atribut secara dinamik untuk setiap elemen; dan kaedah .map boleh menukar elemen array ke dalam tatasusunan baru.
