制作顶部滑动条的坑
1.使用MUI中 tab-top-webview-main.html
2.需要把slider区域的 mui-fullscreen 类去掉
3.滑动条无法正常触发滑动,通过检查官方文档,发现这是JS组件,需要被初始化一下
- 导入mui.js
- 调用官方提供的方式初始化
mui('.mui-scroll-wrapper').scroll({
deceleration: 0.0005 //flick 减速系数,系数越大,滚动速度越慢,滚动距离越小,默认值0.0006
});
4.我们在初始化滑动条的时候,导入的 mui.js 控制台报错:
Uncaught TypeError: ‘caller’, ‘callee’, and ‘arguments’ properties may not be accessed on strict mode functions or the arguments objects for calls to them
(uncaught typeerror:“caller”、“callee”和“arguments”属性不能在严格模式函数或调用它们的arguments对象上访问)
原因是mui.js中用到了’caller’, ‘callee’, and ‘arguments’ ,但是,webpack的包好的bundle.js中,默认是启动严格模式,两者冲突
解决方案:
1.把 mui.js 中的非严格模式的代码改掉;但是这样不现实
2.把 webpack打包时候的严格模式禁用掉;
- 安装插件
cnpm i babel-plugin-transform-remove-strict-mode - 在 .babelrc配置文件plugins中加入"transform-remove-strict-mode"
"plugins": [
// "@babel/plugin-transform-runtime",
"@babel/plugin-proposal-class-properties",
"transform-remove-strict-mode"
]
如果还报错,要注意去掉plugin-transform-runtime
来源:黑马程序员vue.js视频教程