跟我一起做京东金融的项目理财页(三)

理财页面同首页很多类似,故很多组件可以复用,稍加修改即可

//app\js\money\mslider.vue
<template>
    <Panel title="轮播图" :class="$style.panel">
        <section :class="$style.content">
            <Slider :items="items" :cname="$style.slider"/>
        </section>
    </Panel>
</template>
<script>
import Panel from '../core/panel'
import Slider from '../core/slider'
export default {
    components:{
        Panel,
        Slider
    },
    data(){
        return {
            items:[
                {
                   href:'home',
                   src:"//img12.360buyimg.com/jrpmobile/jfs/t1/38925/1/7734/32802/5cef91cfE8962dc90/08a7df363c6465f2.png?width=750&height=400"
                },
                {
                    href:'home',
                    src:"//img12.360buyimg.com/jrpmobile/jfs/t1/31588/6/14705/52443/5cbeb2b2Ea0648bba/e05f04db25d47126.png?width=750&height=400"
                }
                ]
        }
    }
}
</script>
<style lang="scss" module>
    @import "../../css/element.scss";
    .panel{
        @include panel;
        margin: 0;
        >h4{
            display: none;
        }
        .content{
            .slider{
                margin-top: 120px;
            }
        }
    }
</style>

//app\js\money\ada.vue
<template>
    <Panel class="panel" :class="$style.panel">
        <section :class="$style.content">
            <img src="//img12.360buyimg.com/jrpmobile/jfs/t1/76825/21/3349/15938/5d197607Ed74e7dea/40bca9650539b256.jpg?width=750&height=200" alt="">
        </section>
    </Panel>
</template>
<script>
import Panel from '../core/panel'
export default {
    components:{
        Panel
    }
}
</script>
<style lang="scss" module>
    @import "../../css/element.scss";
    .panel{
        @include panel;
        >h4{
            display: none;
        }
        .content{
            img{
                width: 100%;
                // height: 230px;
                display: block;
            }
        }

    }
</style>
//app\js\money\money.vue
<template>
    <Panel title="理财精选" :class="$style.panel">
        <section :class="$style.content">
            <dl :class="$style.item" v-for="item in items" :key="item.title">
                <dt>{{item.title}}<span>{{item.sub}}</span> </dt>
                <dd>{{item.rate}}</dd>
                <dd>{{item.text}}</dd>
            </dl>
        </section>
    </Panel>
</template>
<script>
import Panel from '../core/panel'
export default {
    components:{
        Panel
    },
    data(){
        return {
            items:[
                {
                    title:'定期理财',
                    sub:'理财首选',
                    rate:'5.80%',
                    text:'近1年历史年化投资回报率'
                },
                 {
                    title:'京智0号',
                    sub:'大数据赋能',
                    rate:'6.00%',
                    text:'近1月历史年化投资回报率'
                },
                 {
                    title:'建信养老飞益鑫',
                    sub:'1000起投',
                    rate:'4.57%',
                    text:'近7日年化收益'
                },
                 {
                    title:'小白基金',
                    sub:'超短期',
                    rate:'4.50%',
                    text:'7日年化收益率'
                }
            ]
        }
    }
}
</script>
<style lang="scss" module>
    @import '../../css/element.scss';
    .panel{
        @include panel;
        .content{
            @include flex(row);
            justify-content: space-around;
            box-sizing: border-box;
            &:after{
                content:"";
                display: block;
                width: 100%;
                height: 0px;
                box-sizing: border-box;
                border-bottom: 1px solid red;
                position: relative;
                top: -208px;
            }
            .item{
                position: relative;
                width:50%;
                box-sizing: border-box;
                &:after{
                    content:'';
                    width:1px;
                    height: 136px;
                    display: block;
                    position: absolute;
                    top:50%;
                    right:0;
                    margin-top: -68px;
                    border-right: 1px solid red;
                }
                &:nth-child(2n){
                    &:after{
                        display: none;
                    }
                }
                padding: 34px 16px;
                dt{
                    font-size: 22px;
                    line-height: 42px;
                    color: #333;
                    span{
                        font-size: 22px;
                        color: #ff5155;
                        border:1px solid #ff5155;
                        padding: 0 8px;
                        vertical-align: 1px;
                        margin-left: 2px;
                    }
                }
                dd{
                    &:nth-child(2){
                        font-weight: 700;
                        font-size: 44px;
                        height: 58px;
                        line-height: 58px;
                        color: #FF5155;
                        white-space: nowrap;
                        text-overflow: ellipsis;
                        overflow: hidden;
                    }
                    &:nth-child(3){
                        font-size: 24px;
                        height: 34px;
                        line-height: 34px;
                        color: #999;
                        white-space: nowrap;
                        text-overflow: ellipsis;
                        overflow: hidden;
                    }
                }
            }
        }
    }
</style>

效果为

//app\js\money\finance.vue
<template>
    <Panel title="理财精选" :class="$style.panel">
        <section :class="$style.content">
            <div :class="$style.item">
                <img src="//img12.360buyimg.com/jrpmobile/jfs/t3670/58/543125556/2606/a65096b9/580d80afN63b1085a.png?width=76&height=76" alt="">
                <div>
                    <h4>月度理财</h4>
                    <p>预期年化收益率4.50%</p>
                </div>
                <em>去赚钱 ></em>
            </div>
             <div :class="$style.item">
                <img src="//img12.360buyimg.com/jrpmobile/jfs/t3679/44/511862277/2728/c1c6b2bf/580d8189N6b6f8052.png?width=76&height=76" alt="">
                <div>
                    <h4>季度理财</h4>
                    <p>历史年化回报率5.50%<</p>
                </div>
                <em>去赚钱 ></em>
            </div>
             <div :class="$style.item">
                <img src="//img12.360buyimg.com/jrpmobile/jfs/t3331/69/580199498/3074/d5bb21c5/580d7f6cN7f35e596.png?width=76&height=76" alt="">
                <div>
                    <h4>一年理财</h4>
                    <p>历史年化回报率5.80%</p>
                </div>
                <em>去赚钱 ></em>
            </div>
        </section>
    </Panel>
</template>
<script>
import Panel from '../core/panel';
export default {
    components:{
        Panel
    }
}
</script>
<style lang="scss" module>
    @import "../../css/element.scss";
    .panel{
        @include panel;
        >h4{
            border-bottom: 1px solid #ddd;
        }
        .content{
            @include flex;
            .item{
                @include flex(row);
                align-items: center;
                height: 140px;
                &:after{
                    content: "";
                    box-sizing: border-box;
                    height: 0;
                    width: 100%;
                    border-bottom: 1px solid #ddd;
                    margin-left: 150px;
                }
                &:last-child:after{
                    border-bottom: 1px solid #fff;
                }
                >img{
                    width:88px;
                    height: 88px;
                    display: inline-block;
                    margin: 0 32px;
                }
                >div{
                    font-size: 32px;
                    color: #333;
                    line-height: 1.8;
                    width: 344px;
                    p{
                        color:#ff3223;
                        font-size: 24px;
                        line-height: 1.1;
                        white-space: nowrap;
                        text-overflow: ellipsis;
                        overflow: hidden;
                    }
                }
                >em{
                    color: #FF8014;
                    font-size: 28px;
                }
            }
        }
    }
</style>

//app\js\money\adc.vue
<template>
    <Panel class="panel" :class="$style.panel">
        <section :class="$style.content">
            <img src="//img12.360buyimg.com/jrpmobile/jfs/t20746/93/1719082958/12040/306a2296/5b31b40dNeefe4c3c.png?width=750&height=200" alt="">
        </section>
    </Panel>
</template>
<script>
import Panel from '../core/panel'
export default {
    components:{
        Panel
    }
}
</script>
<style lang="scss" module>
    @import "../../css/element.scss";
    .panel{
        @include panel;
        margin-bottom: 0;
        >h4{
            display: none;
        }
        .content{
            img{
                width: 100%;
                // height: 230px;
                display: block;
            }
        }

    }
</style>
//app\js\money\index.vue

<template lang="html">
    <div>
        <Heador/>
        <Slider/>
        <Ada/>
        <Money/>
        <Adb/>
        <Finance/>
        <Adc/>
        <Footer :cname="$style.mfooter"/>
        <Navbar/>

    </div>
</template>
<script>
import Heador from '../public/header'
import Footer from '../public/footer'
import Slider from './mslider'
import Navbar from '../public/navbar'
import Ada from './ada'
import Adb from './adb'
import Adc from './adc'
import Money from './money'
import Finance from './finance'
export default {
  components:{
    Heador,
    Slider,
    Ada,
    Adb,
    Adc,
    Footer,
    Navbar,
    Money,
    Finance
  }
}
</script>

<style lang="scss" module>
.mfooter{
    margin-top: 0 !important;
    ul{
        li:first-child{
            display: none;
        }
    }
}
</style>

原文地址:https://www.cnblogs.com/smart-girl/p/11215522.html

时间: 2024-11-23 00:37:40

跟我一起做京东金融的项目理财页(三)的相关文章

跟我一起做京东金融的项目众筹页(五)

//app\js\raise\rslider.vue <template> <Panel title="轮播组件" :class="$style.panel"> <section :class="$style.content"> <swiper :options="options"> <swiper-slide> 百万白条券免费送,速来领取 </swiper-s

跟我一起做京东金融的项目白条页(四)

//app\js\ious\islider.vue <template> <div> <Panel title="轮播图" :class="$style.panel"> <section :class="$style.content"> <Slider :items="items"/> </section> </Panel> </div&

跟我一起做京东金融的项目首页(二)

1.创建抽象组件 //app\js\core\btn.vue <template> <div :class="[btnClass,cname]"> <slot/> </div> </template> <script> export default { // 子组件要显示的用props选项声明它期待获得的数据 props:{ cname:{ type:String, default:'' } }, data(){

跟我一起做京东金融的项目(一)

虽然突兀,但是项目已经开始了 我们首先定义公共的css文件 //app\css\layout.scss @charset "UTF-8"; @mixin flex($direction:column,$inline:block){ display: if($inline==block,flex,inline-block); flex-direction: $direction; flex-wrap: wrap; } //app\css\element.scss @import &quo

走进京东金融:听过来人谈经验及技术干货

以「金融科技」定位的京东金融集团成立于2013年10月,逐步构建了供应链金融.消费金融.财富管理.众筹.证券.保险.支付.金融科技以及农村金融九大业务板块. 京东金融CEO陈生强表示,京东金融以数据为基础,以技术为手段,借力京东的场景和用户资源来做金融业务,这是自营金融业务.现在乃至未来,京东金融要做的是:遵从金融本质,以数据为基础,以技术为手段,为金融行业服务,从而帮助金融行业提升效率.降低成本.增加收入.这个定位就是金融科技. 京东金融这三年多,从无到有,从有到精,一路走来,背后定有许多精彩

前端面试项目冲刺,京东金融Vue组件化实战

<section>课程地址 http://icourse8.com/vue_jujinahua.html </section> 章节信息第1章 课程介绍第2章 环境及知识准备第3章 业务开发流程与工程构建安装第4章 项目设计与原理分析第5章 京东金融首页第6章 京东金融理财页第7章 京东金融白条页第8章 京东金融众筹页第9章 活动专题页第11章 工程构建详解第12章 面试知识点与技巧第13章 课程总结第14章 直播视频<前端人的危机如何破解> public class

京东金融哲学:“大供应链”思维

京东在IPO之路上尘埃落定之时,其另一谋划也在悄然施展:去除身上的电商标签.从供应链金融(京保贝).消费金融(京东白条).支付业务(网银在线).平台业务(京东小金库)到7月上线的众筹业务,京东金融在互联网金融的布局逐渐多元化,在其官方定义中,其金融模式属于"互联网+零售商+金融". 文/张书乐 刊载于<经理人>2015年1月刊 对于京东来说,它的互联网金融布局从2012年收购网银在线起,终于在2014年下半年开始,初具规模.而在此领域步步落于人后的京东,更在8月扬眉吐气了一

直击传统运维痛点,京东金融智能运维初探!

随着互联网+时代的到来,京东金融业务规模不断扩大,业务场景也不断创新.但是,业务变化之快超乎想象,相应的 SOA  及微服务架构日趋深入,服务数量不断膨胀,线上环境日益复杂,服务依赖关系每天都在变化. ● 如何实时看清系统的容量水位,为容量评估和系统扩容提供客观依据? ● 当故障发生时,如何精确判断影响范围? ● 如何确定每一次交易过程中,每个系统处理耗时分别是多少? ● 每个系统在处理一笔交易时,分别在数据库.NoSQL.缓存.日志.RPC.业务逻辑上耗时多少? ● 如何快速确定系统的真正瓶颈

京东金融大数据竞赛猪脸识别(1)-从视频提取图像

2017年11月的京东金融大数据竞赛参与人数最多的是猪脸识别的算法比赛,参加整个大数据比赛的有四千多人,而猪脸识别算法组就有一千多人.可见,搞图像识别的的人很多啊.想要提升自己价值的小伙伴们,向语音.文本.机器人等领域进发吧,有了机器学习的基础,入门这些领域应该都不是太难.比赛给的数据是30头猪的视频,做识别的第一步还是从视频中去图像吧.本想用以前写过的视频取帧程序.看Matlab示例的时候发现用Matlab取帧更简便易行,那就用它吧.这样又省了很多时间.代码如下: %exam1.m extra