mirror of
https://github.com/WeBankFinTech/fes.js.git
synced 2025-04-06 03:59:53 +08:00
96 lines
2.3 KiB
Vue
96 lines
2.3 KiB
Vue
<template>
|
|
<section class="code-box">
|
|
<section class="code-box-demo">
|
|
<slot name="demo"></slot>
|
|
</section>
|
|
<section class="code-box-meta">
|
|
<div class="code-box-title">
|
|
{{this.title}}
|
|
</div>
|
|
<div class="code-box-description">
|
|
<slot name="description"></slot>
|
|
</div>
|
|
<div class="code-box-actions">
|
|
<span v-show="!show" @click="toggle">显示代码</span>
|
|
<span v-show="show" @click="toggle">隐藏代码</span>
|
|
</div>
|
|
<div v-show="show" class="code-box-template">
|
|
<iframe :src="this.tp" />
|
|
</div>
|
|
</section>
|
|
</section>
|
|
</template>
|
|
<script>
|
|
export default {
|
|
name: "componetTemplate",
|
|
props: {
|
|
title: String,
|
|
template: String
|
|
},
|
|
data() {
|
|
return {
|
|
show: false
|
|
}
|
|
},
|
|
computed: {
|
|
tp(){
|
|
return this.$site.base + this.template
|
|
}
|
|
},
|
|
methods: {
|
|
toggle(){
|
|
this.show = !this.show;
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
<style lang="scss" scoped>
|
|
.code-box{
|
|
position: relative;
|
|
display: inline-block;
|
|
width: 100%;
|
|
margin: 16px 0;
|
|
border: 1px solid #f0f0f0;
|
|
border-radius: 2px;
|
|
transition: all .2s;
|
|
.code-box-demo{
|
|
background-color: #fff;
|
|
padding: 42px 24px 50px;
|
|
color: rgba(0,0,0,.85);
|
|
border-bottom: 1px solid #f0f0f0;
|
|
}
|
|
.code-box-meta{
|
|
position: relative;
|
|
width: 100%;
|
|
font-size: 14px;
|
|
border-radius: 0 0 2px 2px;
|
|
transition: background-color .4s;
|
|
.code-box-title{
|
|
position: absolute;
|
|
top: -14px;
|
|
margin-left: 16px;
|
|
padding: 1px 8px;
|
|
color: #777;
|
|
background: #fff;
|
|
border-radius: 2px 2px 0 0;
|
|
}
|
|
.code-box-description{
|
|
padding: 18px 24px 12px;
|
|
}
|
|
.code-box-actions{
|
|
display: flex;
|
|
justify-content: center;
|
|
padding: 12px 0;
|
|
border-top: 1px dashed #f0f0f0;
|
|
opacity: .7;
|
|
transition: opacity .3s;
|
|
}
|
|
.code-box-template iframe{
|
|
border: 0;
|
|
width: 100%;
|
|
height: 300px;
|
|
}
|
|
}
|
|
}
|
|
</style>
|