美文网首页vue技术文档
Vue项目使用particles.js粒子效果以及销毁

Vue项目使用particles.js粒子效果以及销毁

作者: 小明同学喜欢熊 | 来源:发表于2019-12-23 23:46 被阅读0次

最近在使用Vue+Element开发一个后台管理系统,想找一个好看点的素材当背景,突然找到particles.js(传送门:https://github.com/VincentGarreau/particles.js/),也就是传说的粒子效果。于是想使用它当作登陆背景。

先上效果图如下

效果图
  1. 安装particles.js
npm install --save particles.js
  1. 在main.js中引入
//main.js文件
import VueParticles from 'vue-particles'
Vue.use(VueParticles)
  1. 在需要的页面中直接使用
<vue-particles 
  class="vue-particles" 
  color="#dedede" 
  :particleOpacity="0.7" 
  :particlesNumber="80" 
  shapeType="star" 
  :particleSize="4" 
  linesColor="#dedede" 
  :linesWidth="1" 
  :lineLinked="true" 
  :lineOpacity="0.4" 
  :linesDistance="150" 
  :moveSpeed="3" 
  :hoverEffect="true" 
  hoverMode="grab" 
  :clickEffect="true" 
  clickMode="push">
</vue-particles>
  • 对应的属性含义
color: String类型。默认'#dedede'。粒子颜色。
particleOpacity: Number类型。默认0.7。粒子透明度。
particlesNumber: Number类型。默认80。粒子数量。
shapeType: String类型。默认'circle'。可用的粒子外观类型有:"circle","edge","triangle", "polygon","star"。
particleSize: Number类型。默认80。单个粒子大小。
linesColor: String类型。默认'#dedede'。线条颜色。
linesWidth: Number类型。默认1。线条宽度。
lineLinked: 布尔类型。默认true。连接线是否可用。
lineOpacity: Number类型。默认0.4。线条透明度。
linesDistance: Number类型。默认150。线条距离。
moveSpeed: Number类型。默认3。粒子运动速度。
hoverEffect: 布尔类型。默认true。是否有hover特效。
hoverMode: String类型。默认true。可用的hover模式有: "grab", "repulse", "bubble"。
clickEffect: 布尔类型。默认true。是否有click特效。
clickMode: String类型。默认true。可用的click模式有: "push", "remove", "repulse", "bubble"
  • 半成品效果图
半成品

如图可以看得到粒子效果在上面,而登录框则被挤到下面,因此需要通过css定位来调整位置,使其达到想要的效果。

/*  css布局  */
.vue-particles{
  position: absolute;
  width: 100%;
  height: 100%;
}
  • 销毁粒子效果

粒子效果在登陆后默认会继续运行,会导致浏览器占用资源过高,查看其源码后发现作者为其写了一个销毁粒子函数,因此可以在登陆后经行手动销毁粒子效果,释放资源。

beforeDestroy(){
    if(pJSDom && pJSDom.length > 0){          
      pJSDom.forEach(pJSDomItem=>{               
        pJSDomItem.pJS.fn.vendors.destroypJS()          
      })     
    }
  }

后记:粒子销毁后如果用户退出登陆返回到登陆页面,粒子效果将不再渲染,这个问题目前还没有解决,到时候要是解决了再来补充吧。

相关文章

  • Vue项目使用particles.js粒子效果以及销毁

    最近在使用Vue+Element开发一个后台管理系统,想找一个好看点的素材当背景,突然找到particles.js...

  • vue中使用Particles.js做粒子效果

    particles.js github地址 居然有20.5k厉害了; 一开始通过npm下载,但是其插件不支持 im...

  • vue粒子效果

    粒子效果是一个很好玩很有趣的东西,前几天有人问我vue怎么使用粒子效果,其实vue使用一些简单粒子效果很容易,下面...

  • vue粒子效果

    粒子效果是一个很好玩很有趣的东西,前几天有人问我vue怎么使用粒子效果,其实vue使用一些简单粒子效果很容易,下面...

  • particles.js粒子效果

    GitHub项目地址 效果美观,大方,轻盈。。。弹指间,一个粒子动画效果就完成了。 之前看到过不错的效果,总为浮云...

  • particles.js在vue上的运用

    知乎的首页后面的粒子动效总觉得很炫酷,搜了一下,发现是用particles.js编写的。刚好目前的项目是利用vue...

  • 在vue项目中使用炫酷的粒子动效

    直接看效果图,particles.js介绍就略了,一个轻量级,无依赖的javascript插件,用于粒子背景。原理...

  • vue 粒子效果

    1.安装插件 2.在main.js中引用 3.在页面中使用 4.css中设置样式

  • Cesium绘制轨迹线与轨迹点

    介绍使用primitives创建线条轨迹以及轨迹点以及entities大概介绍 Cesium上建立风场动态粒子效果...

  • vue 项目 解决Swiper轮播图分页器无法显示问题

    Vue项目中添加轮播效果,使用swiper后,分页器无法正常显示,但轮播效果和前进后退箭头以及滚动栏都是正常显示的...

网友评论

    本文标题:Vue项目使用particles.js粒子效果以及销毁

    本文链接:https://www.haomeiwen.com/subject/vtotoctx.html