mouseWheelHandle (event) {
if(!this.isAllowScroll){//是否可以滚动
return
}
if (this.fullpage.isScrolling) {// 加锁部分
return false;
}
let e = event.originalEvent || event;
this.fullpage.deltaY = e.deltaY;
if (this.fullpage.deltaY > 0) {
this.next();
} else if (this.fullpage.deltaY < 0) {
this.pre();
}
},
setAllowScrolling(isAllow){
this.isAllowScroll=isAllow
},
}
写到这里基本就完成了,我们需要打包成别人可以用的。感谢vue-cli3,都封装的非常好了。
打包
在package.json的scripts增加一个命令,然后执行npm run build:lib
"scripts": {
"build:lib": "vue-cli-service build --target lib --name v-fullpage ./src/components/index.js",
},
这样我们就会打包到dist几个文件,主要打包成了umd(浏览器可以引用)和commonjs模块规范的包。
参考Vue Cli3 构建目标:库

发布
pacakage.json发布到npm的字段
配置 package.json 文件中发布到 npm 的字段
name: 包名,该名字是唯一的。npm官网搜索一下有没有,这里我们取v-fullpage
version: 版本号,每次发布至 npm 需要修改版本号
description: 描述。
main: 入口文件,import/require的
keyword:关键字,以空格分离希望用户最终搜索的词。
author:作者
private:是否私有,需要修改为 false 才能发布到 npm
npm官网注册npm账号,有就不需要
回到我们的目录下,npm login
发布,npm publish
需要等一下,npm官网搜索

使用
import Vue from "vue";
import fullpage from "v-fullpage";Vue.use(fullpage);
or
<script src="vue.min.js"></script>
<!-- must place this line after vue.js -->
<script src="v-fullpage.umd.min.js"></script>










