|
|
- <template>
- <div class="study-ytbd">
- <div class="ytbd-left" v-show="!showDetail">
- <sbject :study="study" :operate="true" @change="changeSubject" />
- </div>
- <div class="ytbd-right" v-if="studyInfo.studySubjectId!='' && studyInfo.studySubjectId!=undefined">
- <ytbdList :study="studyInfo" @showDetail="showDetailCallback"/>
- </div>
- </div>
- </template>
-
- <script>
- import sbject from './suject.vue'
- import ytbdList from './ytbdList.vue'
- export default {
- name: 'StudyYtbd',
- props: {
- study:{
- type:Object,
- default:()=>{
- return {}
- }
- }
- },
- watch:{
- study: {
- immediate: true,
- deep:true,
- handler(v) {
- this.studyInfo = _.merge({studySubjectId:''},v)
- }
- },
- },
- components: {sbject,ytbdList},
- computed: {},
- filters: {},
- data() {
- return {
- showDetail:false,
- studyInfo:{
- studySubjectId:''
- }
- }
- },
- created() {},
- methods: {
- changeSubject(val){
- this.studyInfo.studySubjectId = val
- },
- showDetailCallback(val){
- this.showDetail=val
- this.$emit('showDetail',val)
- }
- }
- }
- </script>
- <style lang="scss" scoped>
- .study-ytbd {
- display: flex;
- flex-direction: row;
- .ytbd-left {
- background: #fff;
- padding: 20px;
- margin-right: 10px;
- flex-shrink: 0;
- width: 350px;
- }
- .ytbd-right{
- flex-grow: 1;
- overflow: hidden;
- }
- }
- </style>
|