React项目中使用fullpage.js实现整屏翻页

最近笔者在完成一个移动端小项目的过程中需要实现整屏翻页的效果;调研完毕之后,最终决定使用pullPage.js实现此功能。理由也很简单,fullPage.js使用起来比较方便,并且官网上也给了在react项目中使用的demo。本文记录了这个第三方库的使用过程。

1. 安装

bash 复制代码
yarn add fullpage.js

2. 项目中引入

js 复制代码
import fullpage from 'fullpage.js';
import 'fullpage.js/dist/fullpage.css';

3. 挂载

在dom加载完成之后,实例化fullpage

js 复制代码
  useEffect(() => {
    new fullpage('#fullpage', {
      credits: { enabled: false, label: '', position: 'right' },
      // fullpage.js的配置选项
      // 例如:sectionsColor, navigation等
    });
  }, []);

new fullpage的时候会自动去寻找id为fullpage的dom元素 ,因此一定保证根元素的id为fullpage,如下所示:

jsx 复制代码
    <div id="fullpage">
      <div className='section' style={{ boxSizing: 'border-box', height: window.innerHeight }}>
      ...
      </div>
    </div>

fullpage作用的对象是 ,而页使用section这个类名来表示,如上面的代码所示。

4. 修改

fullpage.js夹杂了一些私货,需要手动去除

css 复制代码
.fp-overflow {
  height: 100%;
}

.fp-watermark {
  display: none;
}

第一个消除的是垂直方向的居中,一般来说不需要;

第二个则是这个组件的商标,也需要去掉。

相关推荐
良木林32 分钟前
JavaScript书写基础和基本数据类型
开发语言·前端·javascript
工业甲酰苯胺7 小时前
TypeScript枚举类型应用:前后端状态码映射的最简方案
javascript·typescript·状态模式
brzhang7 小时前
我操,终于有人把 AI 大佬们 PUA 程序员的套路给讲明白了!
前端·后端·架构
止观止8 小时前
React虚拟DOM的进化之路
前端·react.js·前端框架·reactjs·react
goms8 小时前
前端项目集成lint-staged
前端·vue·lint-staged
谢尔登8 小时前
【React Natve】NetworkError 和 TouchableOpacity 组件
前端·react.js·前端框架
Lin Hsüeh-ch'in8 小时前
如何彻底禁用 Chrome 自动更新
前端·chrome
augenstern41610 小时前
HTML面试题
前端·html
张可10 小时前
一个KMP/CMP项目的组织结构和集成方式
android·前端·kotlin
G等你下课10 小时前
React 路由懒加载入门:提升首屏性能的第一步
前端·react.js·前端框架