国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

vue3+vite+ts視頻背景酷炫登錄模板【英雄聯盟主題】

這篇具有很好參考價值的文章主要介紹了vue3+vite+ts視頻背景酷炫登錄模板【英雄聯盟主題】。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

最近我準備在自己的網站上開發(fā)一個博客系統(tǒng),首先要實現后臺登錄界面。我選擇使用Vue 3 + Vite + TypeScript框架來構建,下面是針對該主題的詳細說明:

在網頁中使用視頻作為背景圖已經相當常見了,而且網上也有很多相關的插件可供使用。我選擇使用"vue-responsive-video-background-player"插件來實現這個功能。

首先,你需要通過以下命令來安裝該插件:

npm install vue-responsive-video-background-player

下面是兩種不同的引入方式,并將插件注冊到Vue應用中:

作為組件:
在main.ts文件中引入插件,并將其作為一個全局組件注冊:

import VideoBackground from 'vue-responsive-video-background-player'

Vue.component('video-background', VideoBackground);

作為插件:
在main.ts文件中引入插件,并使用Vue的use方法注冊插件:

import { Plugin } from 'vue-responsive-video-background-player'

Vue.use(Plugin);

如果在使用過程中出現了找不到聲明模塊的錯誤,你可以創(chuàng)建一個以.d.ts為后綴的新文件,然后添加以下內容:

declare module 'vue-responsive-video-background-player'{
    const content: any
    export = content
}

這樣就能解決找不到聲明模塊的問題了。

創(chuàng)建視頻組件

<template>
  <div class="v_bg" style="z-index: 0;">
    <video-background src="視頻地址" style="width: 100vw;max-width:100%; height: 100vh;height: 100vh;" muted preload playsWhen="canplay"
      objectFit="cover">

      <h1 style="color: white;padding-left: 20px;" >Entrie Star皆星河</h1>
    </video-background>
   
  </div>
</template>

<script setup lang="ts">
import { ref } from 'vue';

</script>

<style scoped>
body {
  margin: 0;
}
h1 {
  font-size: 3.2em;
  line-height: 1.1;
}


</style>
  1. src(路徑,必填)
  2. autoplay(自動播放,默認值:true)
  3. muted(靜音,默認值:true)
  4. preload(預加載,默認值:auto)
  5. objectFit(適應容器,默認值:cover|fill|contain)

更多的組件配置可以參考vue-responsive-video-background-player文檔

使用組件

//創(chuàng)建login.vue
<template>
   <div class="login">
      <videoTool></videoTool>
      <div class="Loginform">

         <el-row :gutter="20">
            <el-col :span="15">
               <div class="input_form">
                  <div class="title">歡迎來到英雄聯盟~</div>
                  <div class="input_user">
                     <img class="user_logo" src="@/assets/lol.png">
                     <el-input v-model="username" placeholder="請輸入召喚師賬號" />
                  </div>
                  <div class="input_pas">
                     <img class="pas_logo" src="@/assets/R-C_pixian.png">
                     <el-input v-model="password" placeholder="請輸入召喚師密碼" />
                  </div>
                  <div class="input_valiCode">
                     <el-input v-model="vailcode" placeholder="請輸入驗證碼" />
                     <valicode></valicode>
                  </div>
                  <div class="commit">
                     <el-button type="warning" >進入峽谷</el-button>
                     
                  </div>
               </div>
            </el-col>
            <el-col :span="9">

            </el-col>
         </el-row>
      </div>
   </div>
</template>

<script lang="ts" setup>
import { ref} from 'vue';
import "animate.css";

import videoTool from '@/components/videoTool.vue'
const username=ref()
const password=ref()
const vailcode=ref()
</script>

<style lang="scss" scoped>
body {
   margin: 0;
}

.login {
   width: 100%;
   height: 100%;
   margin: 0;
   padding: 0;

   .Loginform {
      position: fixed;
      width: 700px;
      height: 400px;
      background-color: rgb(34, 50, 75);
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      z-index: 9999;
      opacity: 0.95;
      background-image: url('@/assets/1_pixian.png');
      background-size: 700px 400px;
      background-position: 230px 0;
      background-repeat: no-repeat;

      .input_form {
         width: calc(100% - 20px);
         height: 380px;
         margin: 10px 10px;

         .title {
            width: 100%;
            height: 80px;
            line-height: 80px;
            text-align: center;
            font-size: 30px;
            font-weight: bolder;
         }

         .input_user {
            display: flex;
            width: 90%;
            height: 80px;
            margin: 0 auto;
            align-items: center;
            position: relative;

            .user_logo {
               width: 25px;
               height: 25px;
               position: absolute;
               z-index: 1111;
            }

            :deep(.el-input .el-input__inner)::placeholder {
               text-indent: 20px;
               color: rgb(95, 40, 74);
               /* 設定縮進的距離,根據需要進行調整 */
            }
         }

         .input_pas {
            display: flex;
            width: 90%;
            height: 70px;
            margin: 0 auto;
            align-items: center;
            .pas_logo{
               width: 25px;
               height: 25px;
               position: absolute;
               z-index: 1111;
            }
            :deep(.el-input .el-input__inner)::placeholder {
               text-indent: 20px;
               color: rgb(95, 40, 74);
               /* 設定縮進的距離,根據需要進行調整 */
            }
         }
         .input_valiCode{
            display: flex;
            width: 90%;
            height: 80px;
            margin: 0 auto;
            align-items: center;
            
            :deep(.el-input ) {
               width: 200px;
               /* 設定縮進的距離,根據需要進行調整 */
            }
            :deep(.el-input .el-input__inner)::placeholder {
               // text-indent: 20px;
               color: rgb(95, 40, 74);
               /* 設定縮進的距離,根據需要進行調整 */
            }
         }
         .commit{
            display: flex;
            justify-content: center;
            
            :deep(.el-button) {
               width: 150px;
               /* 設定縮進的距離,根據需要進行調整 */
            }
         }
      }
   }
}</style>

這里是使用elementUI的組件,所以需要安裝element-ui

npm install element-plus --save

安裝scss

npm i sass sass-loader --save-dev

驗證碼組件請參考我之前的文章---->vue3+vite+ts驗證碼組件

常見問題

1.視頻地址
視頻地址不可以直接在src里引入,需要定義變量傳入,例如const vurl = ref('../src/assets/test.mp4')
2.vue打包視頻不會將視頻,需要上傳至服務器
3.視頻加載很慢,卡頓建議使用對象存儲將視頻文件上傳使用在線地址減少服務器壓力

最終效果圖:
vue3+vite+ts視頻背景酷炫登錄模板【英雄聯盟主題】,前端,vue.js,前端,javascript,css

效果預覽地址:點這里

后續(xù)優(yōu)化

輸入框提示,登錄動畫,主題色
持續(xù)更新~文章來源地址http://www.zghlxwxcb.cn/news/detail-615701.html

到了這里,關于vue3+vite+ts視頻背景酷炫登錄模板【英雄聯盟主題】的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • vue3 vite ts引入vue文件報錯 ts(2307)

    vue3 vite ts引入vue文件報錯 ts(2307)

    vue3 vite ts 生成的項目模板,在ts文件中引入vue文件報錯 ts(2307),只是ts報錯,并不影響項目運行。 官方文檔有說明:http://vue.dragonlm.com/guide/typescript/overview.html#ide-support 解決方法是安裝插件,之后即可正常解析路徑,并可以跳轉到對應文件。 TypeScript Vue Plugin (Volar)

    2024年02月16日
    瀏覽(90)
  • Vue3動態(tài)路由(Vite+Vue3+TS+Mock)

    Vue3動態(tài)路由(Vite+Vue3+TS+Mock)

    Vue通過路由進行頁面管理,不同的路由綁定到不同的頁面。一般來說,前端直接寫好的路由為靜態(tài)路由,在不修改代碼的情況下,路由表是不會改變的。對于不需要動態(tài)改變路由表的網站,靜態(tài)路由就已經足夠了,但是當頁面需要與權限進行綁定時,不同用戶允許瀏覽的頁面

    2024年02月02日
    瀏覽(27)
  • vite vue3項目打包,跳過ts檢查

    vite vue3項目打包,跳過ts檢查

    遇到這個問題是因為vue文件中script標簽沒有寫lang造成的? 剩下的ts類型檢查錯誤 ?\\\"build\\\": \\\"vue-tsc --noEmit --skipLibCheck vite build\\\",是因為這個vue-tsc打包對ts進行了類型檢查,需要全部解決了才行,可以關閉,直接改成\\\"build\\\": \\\"vite build\\\",

    2024年02月16日
    瀏覽(97)
  • vue3+vite+ts+elementplus創(chuàng)建項目

    # vue3+vite+ts+pinia 學習筆記 ## 1、創(chuàng)建項目: npm init vite@latest ? ? 選擇: vue、ts ## 2、進入項目目錄后:npm install 安裝 ## 3、運行項目: npm run dev ## 4、安裝常用插件: ? ? 1、安裝 npm install vue-router@latest 配置:在src目錄下新建router目錄,創(chuàng)建index.ts文件代碼如下: ? ? ? ```javascript 創(chuàng)建

    2024年02月09日
    瀏覽(19)
  • 3d環(huán)形圖開發(fā)(vue3+vite+ts)

    3d環(huán)形圖開發(fā)(vue3+vite+ts)

    開發(fā)效果(待完善): ? 技術支持: Echarts? echarts-gl 安裝: 注:echarts與echarts-gl版本需對應,可參考官網 pnpm add echarts@4.9.0 echarts-gl@1.1.2 ?組件封裝:

    2024年02月07日
    瀏覽(21)
  • 【Vue3+Ts+Vite】配置滾動條樣式

    【Vue3+Ts+Vite】配置滾動條樣式

    2024年02月15日
    瀏覽(17)
  • Electron + Vue3 + Vite + TS 構建桌面應用

    Electron + Vue3 + Vite + TS 構建桌面應用

    之前是使用React、Electron、TS和webpack來構建桌面應用的。雖然功能齊全,但是打包等等開發(fā)的體驗不太理想,總感覺太慢了。作為一個開發(fā)者,我們總是希望,執(zhí)行構建命令后,可以快速打包或者啟動本地應用,且通過更少的配置,來完成開發(fā)體驗。 現在的vite已經得到廣泛的

    2024年02月14日
    瀏覽(34)
  • 基于Vue3+TS+Vite+Cesium創(chuàng)建項目

    基于Vue3+TS+Vite+Cesium創(chuàng)建項目

    隨著近幾年社會的發(fā)展,人們對三維可視化的需求也是越來越多,三維GIS如今真的越來越火了,對于做GIS前端開發(fā)的人員來說,Cesium開發(fā)是絕對繞不開的一門技術,所以今天來說說如何利用當下最火的 Vue3+TS+Vite 來搭建一個基于Cesium的項目開發(fā)環(huán)境。 1.使用 yarn create vite 創(chuàng)建

    2024年02月05日
    瀏覽(22)
  • Nuxt+Vue3+TS+Vite入門教程

    什么是Nuxt3 Nuxt3是一個基于Vue.js的應用框架,它提供了一些默認的配置和約定,使得開發(fā)者可以更快速地構建出高質量的Vue.js應用程序。Nuxt3是Nuxt.js的下一代版本,它采用了全新的架構和設計,提供了更好的性能和可擴展性。 Nuxt3 的優(yōu)勢 1、更快的啟動和渲染速度 2、更好的性

    2024年02月08日
    瀏覽(21)
  • Vue3通透教程【十七】Vite構建TS版本Vue項目

    專欄介紹: 涼哥作為 Vue 的忠實 粉絲輸出過大量的 Vue 文章,應粉絲要求開始更新 Vue3 的相關技術文章,Vue 框架目前的地位大家應該都曉得,所謂三大框架使用人數最多,公司選型最多的框架,涼哥之前在文章中也提到過就是 Vue 框架之所以火起來的原因,和 Vue 框架相比其

    2024年02月13日
    瀏覽(88)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包