learningAndExperiment.vue 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. <template>
  2. <!-- 学习与实验 -->
  3. <view class="myComRoot df jcc bgclF8">
  4. <view class="df fdc contentBox" v-show='checkedIndex_topTitle!=4'>
  5. <!-- 首页大图 -->
  6. <view class="contentMedia df jcc">
  7. <view v-for="(media,n) in data_XXYSY[checkedIndex_topTitle].content.src.list" :key="n">
  8. <img v-show='data_XXYSY[checkedIndex_topTitle].content.src.type=== "image"' :src="media"></img>
  9. </view>
  10. </view>
  11. <!-- 换行的段落文字 -->
  12. <view class="df content-paragraph" v-for="(paragraph,i) in data_XXYSY[checkedIndex_topTitle].content.paragraphList"
  13. :key="i">
  14. <!-- 不换行文字 -->
  15. <view class="contentText">
  16. <text selectable="true"v-for="(text,m) in paragraph" :key="m" :style="{color:text.color,fontWeight:text.fontWeight}">
  17. {{text.text}}
  18. </text>
  19. </view>
  20. </view>
  21. <!-- 按钮 -->
  22. <view class="df jcc">
  23. <view class="df aic jcc btn-xxysy" v-show='checkedIndex_topTitle==0' @click="onClick_KSRZ">开始认知</view>
  24. <!-- <view class="df jcc fdc"> -->
  25. <view class="df aic jcc btn-xxysy" v-show='checkedIndex_topTitle==1' @click="onClick_KSKC">开始勘察</view>
  26. <!-- <view class="df aic jcc btn-xxysy" v-show='checkedIndex_topTitle==1' @click="onClick_KSCY">开始测验</view> -->
  27. <!-- </view> -->
  28. <view class="df aic jcc btn-xxysy" v-show='checkedIndex_topTitle==2' @click="onClick_download_btn">下载客户端</view>
  29. <view class="df aic jcc btn-xxysy" v-show='checkedIndex_topTitle==3' @click="onClick_download_btn">下载客户端</view>
  30. <view class="df aic jcc btn-xxysy" v-show='checkedIndex_topTitle==4'>进入虚拟资源库</view>
  31. </view>
  32. <downloadInstruction ref="downloadInstruction" v-show='data_XXYSY[checkedIndex_topTitle].content.bShowDownloadInstr'></downloadInstruction>
  33. </view>
  34. <simulationLibrary ref="simulationLibrary" v-show='checkedIndex_topTitle==4'></simulationLibrary>
  35. </view>
  36. </template>
  37. <script>
  38. import simulationLibrary from "../../../components/home/simulationLibrary.vue"
  39. import downloadInstruction from "../../../components/startLearning/learningAndExperiment/downloadInstruction.vue"
  40. export default {
  41. components: {
  42. simulationLibrary,
  43. downloadInstruction
  44. },
  45. data() {
  46. return {
  47. checkedIndex_topTitle: 0, //顶部标题选择
  48. //以下为静态
  49. myData_QXZB_SYQY: myData_QXZB_SYQY,
  50. data_XXYSY: [
  51. myData_XXYSY_YLRZ, //原理认知
  52. myData_XXYSY_SJKC, //实景勘察
  53. myData_XXYSY_XNJSDJ, //虚拟技术搭建
  54. myData_XXYSY_XNYSZZ, //虚拟艺术创作
  55. myData_XXYSY_XNZYKJS, //虚拟资源库建设
  56. ],
  57. checkedColor: "#EA252C",
  58. unCheckedColor_text: "#0E0E0E",
  59. unCheckedColor_border: "#C4C4C4",
  60. }
  61. },
  62. methods: {
  63. onTopXXYSYClick(index) {
  64. this.checkedIndex_topTitle = index;
  65. // console.log("2级点击", index, this.data_XXYSY[index].content);
  66. // console.log("***",this.myData_QXZB_SYQY);
  67. if(index == 4)
  68. {
  69. this.$refs.simulationLibrary.init();
  70. }
  71. },
  72. onClick_KSRZ(){
  73. this.$emit("onClick_KSRZ")
  74. },
  75. onClick_KSKC(){
  76. uni.pageScrollTo({
  77.   scrollTop: 0, duration:1
  78. });
  79. this.$emit("onShowWebview720");
  80. // this.$emit("onClick_KSKC")
  81. },
  82. onClick_KSCY(){
  83. this.$emit("onClick_KSKC");
  84. },
  85. onClick_download_btn() {
  86. let url = mydata_api + "/file/simulationexe";
  87. uni.request({
  88. url: url, //仅为示例,并非真实接口地址。
  89. success: (res) => {
  90. console.log('get成功');
  91. console.log(res.data);
  92. window.location.href = res.data;
  93. },
  94. fail: (res) => {
  95. console.log('get失败');
  96. console.log(res.data);
  97. }
  98. });
  99. }
  100. }
  101. }
  102. </script>
  103. <style lang="scss">
  104. .contentBox {
  105. // width: px2vw(1789);
  106. width: px2vw(1150);
  107. margin-top: px2vw(66);
  108. }
  109. .content-paragraph {}
  110. .contentText {
  111. // width: px2vw(1789);
  112. font-size: px2vw(22);
  113. line-height: px2vw(46);
  114. }
  115. .contentMedia {
  116. // margin-top: px2vw(66);
  117. // border: 1px solid #B4B4B4;
  118. // margin-top: 1%;
  119. margin-bottom: 5%;
  120. }
  121. .contentMedia img {
  122. // width: px2vw(780);
  123. // margin-bottom: px2vw(63);
  124. width: 100%;
  125. height: 100%;
  126. }
  127. .btn-xxysy {
  128. width: px2vw(200);
  129. height: px2vw(58);
  130. background: #EA252C;
  131. border-radius: px2vw(8);
  132. font-size: px2vw(24);
  133. color: #FFFFFF;
  134. line-height: px2vw(31);
  135. margin-bottom: px2vw(63);
  136. }
  137. </style>