猫教授
猫教授
  • 发布:2019-05-10 09:15
  • 更新:2019-08-08 10:06
  • 阅读:12556

关于uni-page-body 的高度问题

分类:uni-app

同样的代码,在hello项目中修改代码查看样式会自动出现代码块中的内容。我自建的项目就没这一段,请问这一段代码是如何出现的呀,找好久找不出来
element.style {
}
<style>…</style>

uni-page-body {  
    background-color: #F4F5F6;  
    height: 100%;  
    font-size: 14px;  
    line-height: 1.8;  
}

uni-page-body, uni-page-refresh {
display: block;
box-sizing: border-box;
width: 100%;
}
下面是源代码

<template>  
    <view class="uni-tab-bar">  
        <scroll-view id="tab-bar" class="uni-swiper-tab" scroll-x :scroll-left="scrollLeft">  
            <view v-for="(tab,index) in tabBars" :key="tab.id" class="swiper-tab-list" :class="tabIndex==index ? 'active' : ''"  
                  :id="tab.id" :data-current="index" @click="tapTab">{{tab.name}}</view>  
        </scroll-view>  
        <swiper :current="tabIndex" class="swiper-box" :duration="300" @change="changeTab">  
            <swiper-item v-for="(tab,index1) in newsitems" :key="index1">  
                <scroll-view class="list" scroll-y @scrolltolower="loadMore(index1)">  
                    <block v-for="(newsitem,index2) in tab.data" :key="index2">  
                        <media-list :options="newsitem" @close="close(index1,index2)" @click="goDetail(newsitem)"></media-list>  
                    </block>  
                    <view class="uni-tab-bar-loading">  
                        {{tab.loadingText}}  
                    </view>  
                </scroll-view>  
            </swiper-item>  
        </swiper>  
    </view>  
</template>  
<script>  
    import mediaList from '@/components/tab-nvue/mediaList.vue';  

    const tpl = {  
        data0: {  
            "datetime": "40分钟前",  
            "article_type": 0,  
            "title": "uni-app行业峰会频频亮相,开发者反响热烈!",  
            "source": "DCloud",  
            "comment_count": 639  
        },  
        data1: {  
            "datetime": "一天前",  
            "article_type": 1,  
            "title": "DCloud完成B2轮融资,uni-app震撼发布!",  
            "image_url": "https://img-cdn-qiniu.dcloud.net.cn/uniapp/images/shuijiao.jpg?imageView2/3/w/200/h/100/q/90",  
            "source": "DCloud",  
            "comment_count": 11395  
        },  
        data2: {  
            "datetime": "一天前",  
            "article_type": 2,  
            "title": "中国技术界小奇迹:HBuilder开发者突破200万",  
            "image_url": "https://img-cdn-qiniu.dcloud.net.cn/uniapp/images/muwu.jpg?imageView2/3/w/200/h/100/q/90",  
            "source": "DCloud",  
            "comment_count": 11395  
        },  
        data3: {  
            "article_type": 3,  
            "image_list": [{  
                "url": "https://img-cdn-qiniu.dcloud.net.cn/uniapp/images/cbd.jpg?imageView2/3/w/200/h/100/q/90",  
                "width": 563,  
                "height": 316  
            }, {  
                "url": "https://img-cdn-qiniu.dcloud.net.cn/uniapp/images/muwu.jpg?imageView2/3/w/200/h/100/q/90",  
                "width": 641,  
                "height": 360  
            }, {  
                "url": "https://img-cdn-qiniu.dcloud.net.cn/uniapp/images/shuijiao.jpg?imageView2/3/w/200/h/100/q/90",  
                "width": 640,  
                "height": 360  
            }],  
            "datetime": "5分钟前",  
            "title": "uni-app 支持使用 npm 安装第三方包,生态更趋丰富",  
            "source": "DCloud",  
            "comment_count": 11  
        },  
        data4: {  
            "datetime": "2小时前",  
            "article_type": 4,  
            "title": "uni-app 支持原生小程序自定义组件,更开放、更自由",  
            "image_url": "https://img-cdn-qiniu.dcloud.net.cn/uniapp/images/cbd.jpg?imageView2/3/w/200/h/100/q/90",  
            "source": "DCloud",  
            "comment_count": 69  
        }  
    };  

    export default {  
        components: {  
            mediaList  
        },  
        data() {  
            return {  
                scrollLeft: 0,  
                isClickChange: false,  
                tabIndex: 0,  
                newsitems: [],  
                tabBars: [{  
                    name: '关注',  
                    id: 'guanzhu'  
                }, {  
                    name: '推荐',  
                    id: 'tuijian'  
                }, {  
                    name: '体育',  
                    id: 'tiyu'  
                }, {  
                    name: '热点',  
                    id: 'redian'  
                }, {  
                    name: '财经',  
                    id: 'caijing'  
                }, {  
                    name: '娱乐',  
                    id: 'yule'  
                }, {  
                    name: '军事',  
                    id: 'junshi'  
                }, {  
                    name: '历史',  
                    id: 'lishi'  
                }, {  
                    name: '本地',  
                    id: 'bendi'  
                }]  
            }  
        },  
        onLoad() {  
            this.newsitems = this.randomfn()  
        },  
        methods: {  
            goDetail(e) {  
                uni.navigateTo({  
                    url: '/pages/template/tabbar/detail/detail?title=' + e.title  
                });  
            },  
            close(index1, index2) {  
                uni.showModal({  
                    content: '是否删除本条信息?',  
                    success: (res) => {  
                        if (res.confirm) {  
                            this.newsitems[index1].data.splice(index2, 1);  
                        }  
                    }  
                })  
            },  
            loadMore(e) {  
                setTimeout(() => {  
                    this.addData(e);  
                }, 1200);  
            },  
            addData(e) {  
                if (this.newsitems[e].data.length > 30) {  
                    this.newsitems[e].loadingText = '没有更多了';  
                    return;  
                }  
                for (let i = 1; i <= 10; i++) {  
                    this.newsitems[e].data.push(tpl['data' + Math.floor(Math.random() * 5)]);  
                }  
            },  
            async changeTab(e) {  
                let index = e.target.current;  
                if (this.newsitems[index].data.length === 0) {  
                    this.addData(index)  
                }  
                if (this.isClickChange) {  
                    this.tabIndex = index;  
                    this.isClickChange = false;  
                    return;  
                }  
                let tabBar = await this.getElSize("tab-bar"),  
                        tabBarScrollLeft = tabBar.scrollLeft;  
                let width = 0;  

                for (let i = 0; i < index; i++) {  
                    let result = await this.getElSize(this.tabBars[i].id);  
                    width += result.width;  
                }  
                let winWidth = uni.getSystemInfoSync().windowWidth,  
                        nowElement = await this.getElSize(this.tabBars[index].id),  
                        nowWidth = nowElement.width;  
                if (width + nowWidth - tabBarScrollLeft > winWidth) {  
                    this.scrollLeft = width + nowWidth - winWidth;  
                }  
                if (width < tabBarScrollLeft) {  
                    this.scrollLeft = width;  
                }  
                this.isClickChange = false;  
                this.tabIndex = index; //一旦访问data就会出问题  
            },  
            getElSize(id) { //得到元素的size  
                return new Promise((res, rej) => {  
                    uni.createSelectorQuery().select("#" + id).fields({  
                        size: true,  
                        scrollOffset: true  
                    }, (data) => {  
                        res(data);  
                    }).exec();  
                })  
            },  
            async tapTab(e) { //点击tab-bar  
                let tabIndex = e.target.dataset.current;  
                if (this.newsitems[tabIndex].data.length === 0) {  
                    this.addData(tabIndex)  
                }  
                if (this.tabIndex === tabIndex) {  
                    return false;  
                } else {  
                    let tabBar = await this.getElSize("tab-bar"),  
                            tabBarScrollLeft = tabBar.scrollLeft; //点击的时候记录并设置scrollLeft  
                    this.scrollLeft = tabBarScrollLeft;  
                    this.isClickChange = true;  
                    this.tabIndex = tabIndex;  
                }  
            },  
            randomfn() {  
                let ary = [];  
                for (let i = 0, length = this.tabBars.length; i < length; i++) {  
                    let aryItem = {  
                        loadingText: '加载更多...',  
                        data: []  
                    };  
                    if (i < 1) {  
                        for (let j = 1; j <= 10; j++) {  
                            aryItem.data.push(tpl['data' + Math.floor(Math.random() * 5)]);  
                        }  
                    }  
                    ary.push(aryItem);  
                }  
                return ary;  
            }  
        }  
    }  
</script>  

<style>  
    .uni-tab-bar-loading {  
        text-align: center;  
        font-size: 28upx;  
        color: #999;  
    }  
</style>  
2019-05-10 09:15 负责人:无 分享
已邀请:
1***@qq.com

1***@qq.com - 90后IT男

在页面的style中添加以下代码,即可修改uni-page-body中的css样式

page{}

youzy

youzy

请问下 你这边是如何处理的 直接改css?

9***@qq.com

该问题目前已经被锁定, 无法添加新回复