learningAndExperiment.vue 3.9 KB

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