貼上結(jié)構(gòu)代碼:hasVerticalScroll為true,scrollerHeight有值,如果我給class menu-wrapper和foods-wrapper設(shè)置overflow-y:auto;樣式也是完全沒問題的,打印better-scroll初始化也是沒問題的...
補充:發(fā)現(xiàn)個奇怪的問題,我不管是vuex調(diào)用還是重新調(diào)用,不管在生命周期哪個階段去執(zhí)行調(diào)用函數(shù)this.initScroll(),打印都是給我undfined......mounted ()也是...
1.HTML:
<div class="goods">
<!-- 分類列表,左側(cè)邊欄 -->
<div class="menu-wrapper" ref="menuScroll">
<ul>
<li class="menu-item"></li>
</ul>
</div>
<!-- 商品列表,右側(cè)邊欄 -->
<div class="foods-wrapper" ref="foodScroll">
<ul>
<!-- 專場 -->
<li class="container-list"></li>
<!-- 具體分類 -->
<li class="food-list" v-for="(item,index) in setGoods" :key="index">
<h3 class="title">{{item.name}}</h3>
<!-- 具體的商品列表 -->
<ul>
<li class="food-item"></li>
</ul>
</li>
</ul>
</div>
<div class="goods">
2.CSS結(jié)構(gòu)代碼,使用的Sass:
.goods{
display: flex;
position: absolute;
top: 190px;
bottom: 51px;
overflow: hidden;
width: 100%;
// 左側(cè)邊欄
.menu-wrapper{
flex: 0 0 85px;
background: #F4F4F4;
// overflow-y: auto;
.menu-item{
padding: 19px 23px 9px 10px;
border-bottom: 1px solid #E4E4E4;
position: relative;
}
}
// 右側(cè)邊欄
.foods-wrapper{
flex: 1;
.container-list{
padding: 11px 11px 0 11px;
border-bottom: 1px solid #E4E4E4;
}
.food-list{
padding: 11px;
.title{
height: 13px;
font-size: 13px;
background: url('../../assets/btn_yellow_highlighted@2x.png') no-repeat left center;
background-size: 2px 10px;
padding-left: 7px;
margin-bottom: 12px;
}
.food-item{
display: flex;
margin-bottom: 25px;
position: relative;
}
}
}
3.JS代碼:
<script>
import BScroll from 'better-scroll'
export default {
name: "goods",
data() {
return {
seteContainers: {},
setGoods: [],
}
},
methods: {
initScroll (){ //實例滾動
new this.BScroll(this.$refs.menuScroll)
new this.BScroll(this.$refs.foodScroll)
}
},
created (){
this.http.get('/api/goos').then(response => {
if(response.data.code == 0){
this.seteContainers = response.data.data.container_operation_source;
this.setGoods = response.data.data.food_spu_tags;
//執(zhí)行滾動
this.initScroll()
}
})
}
}
</script>
4.打印的new this.BScroll(this.$refs.menuScroll):
謝謝大家我找到問題所在了,代碼中seteContainer()和setGood()數(shù)據(jù)函數(shù)都沒有調(diào)用但拿到數(shù)據(jù)了這是因為computed()計算屬性鉤子函數(shù)自帶監(jiān)聽功能它發(fā)現(xiàn)數(shù)據(jù)變化就自調(diào)用了而且它還有些特殊如果數(shù)據(jù)放在它里面的話其它的鉤子函數(shù)是都沒辦法控制的,所以出現(xiàn)了以下問題initScroll()不管在哪個階段調(diào)用還是異步調(diào)用啥的都是統(tǒng)一給了undfind,然后滾動插件就算初始化成功了也沒執(zhí)行,還是自己剛學vue理解不深刻,謝謝大大們.
北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
北大青鳥中博軟件學院創(chuàng)立于2003年,作為華東區(qū)著名互聯(lián)網(wǎng)學院和江蘇省首批服務(wù)外包人才培訓基地,中博成功培育了近30000名軟件工程師走向高薪崗位,合作企業(yè)超4
中公教育集團創(chuàng)建于1999年,經(jīng)過二十年潛心發(fā)展,已由一家北大畢業(yè)生自主創(chuàng)業(yè)的信息技術(shù)與教育服務(wù)機構(gòu),發(fā)展為教育服務(wù)業(yè)的綜合性企業(yè)集團,成為集合面授教學培訓、網(wǎng)
達內(nèi)教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經(jīng)理職務(wù)負責iOS教學及管理工作。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。