【vue】 网站动态背景 | vanta.js的使用

简介: 【vue】 网站动态背景 | vanta.js的使用

前言

vanta.js可以为网站设置炫酷的动态背景 比如在网站登陆的首页

一、Vanta.js是什么?

示例:vanta.js可以为网站设置炫酷的动态背景 比如在网站登陆的首页。

二、使用步骤

首先我的测试项目是vue2版本,关于React和Angular框架自行查看npm官网Vanta npm 官网:Vanta - npm

1.引入库

  • 在项目中安装 three.js 依赖

这里指定版本,否则会报错,因为three更新了,但是查看源码,该组件库还是使用的这个版本

npm i three@0.121.0
  • 在项目中安装 Vanta JS 依赖

Vanta.js官网: Vanta.js Animated website backgrounds in a few lines of code.

Vanta npm 官网:Vanta - npm

npm i vanta

2.代码部分,在具体项目中调用(基础调用)

注意:我Vanta.js的版本是0.5.24,发现Clouds2,Trunk,Topology,Dots不能用

代码如下(示例):

<template>
  <div ref="vantaRef" class="vantaRef">Foreground content here</div>
</template>

<script>
import * as THREE from "three";
// import BIRDS from "vanta/src/vanta.birds";
// import Fog from "vanta/src/vanta.fog";
// import WAVES from "vanta/src/vanta.waves";
// import Clouds from "vanta/src/vanta.clouds";
import Clouds2 from "vanta/src/vanta.clouds2"; // 有问题
// import Globe from "vanta/src/vanta.globe";
// import Net from "vanta/src/vanta.net";
// import Cells from "vanta/src/vanta.cells";
// import Trunk from "vanta/src/vanta.trunk"; //不可用
// import Topology from "vanta/src/vanta.topology"; //不可用
// import Dots from "vanta/src/vanta.dots"; //不可用
// import Rings from "vanta/src/vanta.rings";
// import Halo from "vanta/src/vanta.halo";
export default {
  mounted() {
    this.vantaEffect = Clouds2({
      el: this.$refs.vantaRef,
      THREE: THREE,
    });
    // // 这里重新设置样式
    // this.vantaEffect.setOptions({
    //   mouseControls: true,
    //   touchControls: true,
    //   gyroControls: false,
    //   minHeight: 200.0,
    //   minWidth: 200.0,
    //   skyColor: 0x91cde3,
    //   cloudColor: 0xc9c9d9,
    //   cloudShadowColor: 0x174b7d,
    //   sunColor: 0xe37f05,
    //   speed: 1.5,
    // });
  },
  beforeDestroy() {
    if (this.vantaEffect) {
      this.vantaEffect.destroy();
    }
  },
};
</script>
<style lang="scss" scoped>
.vantaRef {
  height: 800px;
}
</style>

这样一个炫酷的动态背景就形成了


下班~

目录
相关文章
|
19天前
|
开发框架 前端开发 JavaScript
在Vue&Element前端项目中,使用FastReport + pdf.js生成并展示自定义报表
在Vue&Element前端项目中,使用FastReport + pdf.js生成并展示自定义报表
|
3天前
|
JSON JavaScript 前端开发
JavaScript 详解——Vue基础
【8月更文挑战第16天】
12 3
JavaScript 详解——Vue基础
|
12天前
|
数据采集 存储 JavaScript
基于Python 爬书旗网小说数据并可视化,通过js逆向对抗网站反爬,想爬啥就爬啥
本文介绍了如何使用Python编写网络爬虫程序爬取书旗网上的小说数据,并通过逆向工程对抗网站的反爬机制,最后对采集的数据进行可视化分析。
基于Python 爬书旗网小说数据并可视化,通过js逆向对抗网站反爬,想爬啥就爬啥
|
4天前
|
JavaScript 前端开发
解决在JS中阻止定时器“重复”开启问题、Vue中定时器的使用
这篇文章讨论了在JavaScript和Vue中如何避免定时器重复开启的问题,并提供了一个模拟场景和代码示例,演示了在开启新定时器前清除旧定时器的方法。
解决在JS中阻止定时器“重复”开启问题、Vue中定时器的使用
|
10天前
|
JavaScript
Vue进阶篇(二)-彻底改变 Vue.js 状态管理:深入探讨Vue 3 Setup中的DefineModel
Vue进阶篇(二)-彻底改变 Vue.js 状态管理:深入探讨Vue 3 Setup中的DefineModel
|
19天前
|
开发框架 前端开发 JavaScript
在基于ABP框架的前端项目Vue&Element项目中采用日期格式处理,对比Moment.js和day.js的处理
在基于ABP框架的前端项目Vue&Element项目中采用日期格式处理,对比Moment.js和day.js的处理
|
4天前
|
JavaScript 前端开发 API
vue中将验证表单输入框的方法写在一个js文件中(表达式验证邮箱、身份证、号码、两次输入的密码是否一致)
这篇文章介绍了如何在Vue框架中将表单输入验证逻辑封装到一个JavaScript文件中,并通过正则表达式验证邮箱、身份证、手机号等信息,同时确保两次密码输入的一致性。
|
6天前
|
JavaScript
VUE——使用easy-typer-js实现打字机效果
VUE——使用easy-typer-js实现打字机效果
12 0
|
6天前
|
JavaScript
Vue——使用JS文件中的函数ESLint报错未定义
Vue——使用JS文件中的函数ESLint报错未定义
17 0
|
8天前
|
设计模式 JavaScript 前端开发
现代JavaScript框架比较:React、Vue和Angular
在现代Web开发中,JavaScript框架已成为开发高效、动态用户界面的关键工具。本文将深入比较三大主流框架:React、Vue和Angular。通过探讨它们的核心特性、优缺点和适用场景,帮助开发者根据项目需求选择最合适的框架。重点分析包括性能、学习曲线、社区支持和生态系统等方面,以便开发者能够做出明智的决策,优化开发流程并提升应用性能。