Jadual Kandungan
:
Rumah hujung hadapan web View.js Bagaimana untuk menyesuaikan projek Vite ke skrin? Dua pilihan untuk dikongsi

Bagaimana untuk menyesuaikan projek Vite ke skrin? Dua pilihan untuk dikongsi

Sep 30, 2022 pm 06:09 PM
vue vite

Bagaimana untuk menyesuaikan projek Vite ke skrin? Artikel berikut akan berkongsi dengan anda dua penyelesaian untuk penyesuaian skrin projek Vite Ia sangat terperinci.

Bagaimana untuk menyesuaikan projek Vite ke skrin? Dua pilihan untuk dikongsi

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 berkenaan

Aplikasi web tanpa nisbah bidang tetap, sesuai untuk kebanyakan senario perniagaan

Bagaimana untuk menyesuaikan projek Vite ke skrin? Dua pilihan untuk dikongsi

Pertempuran sebenar projek

1. Kebergantungan pemasangan

npm i postcss-pxtorem autoprefixer amfe-flexible --save-dev
Salin selepas log masuk
postcss-pxtorem ialah pemalam untuk PostCSS, digunakan untuk menjana unit rem daripada unit piksel
Pemalam pemprosesan awalan penyemak imbas autoprefixer

penyelesaian susun atur berskala amfe-flexible menggantikan
asal dan menggunakan
lib-flexibleviewport

yang serasi pada masa ini 2. Cipta direktori akar projek
Fail

postcss.config.js

Bagaimana untuk menyesuaikan projek Vite ke skrin? Dua pilihan untuk dikongsi

3 Import dependensi dalam
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转换
		},
	},
};
Salin selepas log masuk
fail

main.ts/js

4 🎜>
import "amfe-flexible/index.js";
Salin selepas log masuk
Skim penyesuaian berasaskan skala

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 projekBagaimana untuk menyesuaikan projek Vite ke skrin? Dua pilihan untuk dikongsi

1 Cipta fail baharu 🎜>

resize.ts/js

2 Pengenalan antara muka yang berkaitan

Bagaimana untuk menyesuaikan projek Vite ke skrin? Dua pilihan untuk dikongsi

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,
	};
}
Salin selepas log masuk

resize.ts/js

Ditulis pada penghujung

Bagaimana untuk menyesuaikan projek Vite ke skrin? Dua pilihan untuk dikongsiSyorkan 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 &#39;../../utils/resize&#39;;
import {onMounted, onUnmounted} from &#39;vue&#39;;

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>
Salin selepas log masuk
Yang ringkas berdasarkan susunan teknologi Vue3, TS, Vite, qiankun

:

www.xkxk.tech

Yang 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!

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

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.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

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)

Cara menggunakan bootstrap di vue Cara menggunakan bootstrap di vue Apr 07, 2025 pm 11:33 PM

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.

Cara menambah fungsi ke butang untuk vue Cara menambah fungsi ke butang untuk vue Apr 08, 2025 am 08:51 AM

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

Cara Menggunakan Watch di Vue Cara Menggunakan Watch di Vue Apr 07, 2025 pm 11:36 PM

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.

Apakah yang dimaksudkan dengan pembangunan Vue Multi-Page? Apakah yang dimaksudkan dengan pembangunan Vue Multi-Page? Apr 07, 2025 pm 11:57 PM

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.

Cara merujuk fail js dengan vue.js Cara merujuk fail js dengan vue.js Apr 07, 2025 pm 11:27 PM

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.

Cara kembali ke halaman sebelumnya oleh Vue Cara kembali ke halaman sebelumnya oleh Vue Apr 07, 2025 pm 11:30 PM

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.

Cara melompat ke Div Vue Cara melompat ke Div Vue Apr 08, 2025 am 09:18 AM

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.

Cara Menggunakan Vue Traversal Cara Menggunakan Vue Traversal Apr 07, 2025 pm 11:48 PM

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.

See all articles