vue中使用better-scroll


 

1.創建vue-cli3項目   指令 vue create 項目名

 

2.要想使用better-scroll 需要先引入 better-scroll的插件  

這里采用 npm的方式    指令 npm install better-scroll -- save (項目依賴)

 

3.多個列表的展示     當前情況下是全局的滾動

4.我們希望制定某一個區域可以滾動

原生的方式 

需要給

這些li的父親設置     當然,這種原生的方式在移動端會很卡  ,放棄使用

5.采用better-scroll實現滾動   引入better-scroll插件  和在mounted生命周期創建better-scroll實例對象    而且還有彈框效果   這里需要注意的是content外層必須要包上一層wrapper content也是惟一的,content里面可以有很多元素

6.  借助文檔實現功能

 1 <template>
 2   <div id="app">
 3     <div class="wrapper" ref="aaa">
 4       <ul class="content">
 5         <button>按鈕</button>
 6         <li v-for="n in 100" :key="n">分類列表{{n}}</li>
 7       </ul>
 8     </div>
 9   </div>
10 </template>
11 <script>
12 import BScroll from "better-scroll";
13 export default {
14   name: "App",
15   //組價創建完后操作DOM元素
16   mounted() {
17     // console.log(this.$refs.aaa);
18     // console.log(document.querySelector(".wrapper"));
19 
20     //默認情況下bscroll是不可以實時監聽滾動的
21     //probe  偵測
22     //0,1 都是不偵測實時的位置
23     //2:在手指滾動的過程中偵測,手指離開后的慣性過程中不偵測
24     //3:只要是滾動,就監聽
25     //click 默認是false  warpper里面默認的原生事件是不能監聽的
26     const bs = new BScroll(document.querySelector(".wrapper"), {
27       probeType: 3,
28       click: false,
29       pullUpLoad: true
30     });
31 
32     // 監聽滾動類型
33     bs.on("scroll", position => {
34       console.log(position);
35     });
36 
37     //上拉加載事件
38     bs.on("pullingUp", () => {
39       console.log("上啦記載更多");
40       //發送網絡請求,請求跟多頁的數據
41 
42       //等數據請求完成,並且將新的數據展示出來后
43       setInterval(() => {
44         bs.finishPullUp();
45       }, 2000);
46     });
47 
48     // document.querySelector('button').addEventListener('click',function(){
49     //   console.log("被點擊了")
50     // })
51 
52     // document.querySelector('button').onclick=function(){
53     //   console.log("sdsd");
54     // }
55   }
56 };
57 </script>
58 <style>
59 * {
60   padding: 0;
61   margin: 0;
62 }
63 .wrapper {
64   height: 150px;
65   background-color: red;
66   overflow: hidden;
67   /* overflow-y: scroll; */
68 }
69 </style>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM