做题,一页只显示一道题

<view class="cu-list">
  <view class="flexs" style='background:#fff;padding:0 30rpx;'>
    <view>
      <text style='font-size:32rpx;'>{{list.choose}}</text>
    </view>
    <view>
      <view class="text-gray action ma">
        <image style="vertical-align:middle" src='/images/stars.png'></image>
        <text>收藏此题</text>
        <text style="margin-left:20rpx;" class="text-cut"><text style='color:#317AE4;vertical-align: top;'>{{list.id}}</text> /{{data.length}}</text>
      </view>
    </view>
  </view>
</view>
<view class='pm'>
  <view>{{list.title}}</view>
  <!-- 填空 -->
  <view wx:if="{{list.choose=='填空'}}">
    <textarea></textarea>
  </view>
  <!-- 单选 -->
  <radio-group class="radio-group" bindchange="radioChanges" wx:if="{{list.choose=='单项选择'}}">
    <label class="radio" wx:for="{{list.cont}}" wx:for-item="cell" wx:key="index" style='width:100%;display:block;'>
      <radio checked='{{che}}' style='margin-right:40rpx;' value="{{cell}}" bindtap='radio' />{{cell}}
    </label>
  </radio-group>
  <!-- 多选 -->
  <checkbox-group bindchange="checkboxChange" wx:if="{{list.choose=='多项选择'}}">
    <label class="checkbox" wx:for="{{list.cont}}" wx:for-item="cell">
      <view class="tui-menu-list">
        <checkbox style='margin-right:40rpx;' value="{{cell}}" checked="{{item.checked}}" />{{cell}}</view>
    </label>
  </checkbox-group>
  <!-- 上一题,下一题 -->
  <view bindtap='question' class='nes' data-id="{{list.id}}">上一题</view>
  <view bindtap='nextt' class='ne' data-id="{{list.id}}" wx:if="{{list.id<data.length}}">下一题</view>
  <view bindtap='' class='ne' data-id="{{list.id}}" wx:if="{{list.id==data.length}}">交卷</view>

</view>

<view class="time">
  <image src='/images/miao.png'></image>
  <text>答题 剩余时间:{{fen}}分{{miao}}秒</text>
</view>

//浮动开始答题
<view class='piao' wx:if="{{piao}}">
<image class='small' src='/images/xx.png' bindtap='che'></image>
  <image class='piaos' src='/images/piao.png'></image>
  <view style='background:#fff;padding-bottom:20rpx'>
    <view class='one' style='padding:20rpx;'>
      本次模拟考试总分100分
    </view>
    <view style='padding:20rpx;'>70分及格</view>
    <view style='padding:20rpx;' class='two'>30分钟后结束</view>
    <view class='three' bindtap='dati'>开始答题</view>
  </view>
</view>
<view class='bei' wx:if="{{bei}}">
</view>


<!-- <view class='dui'>
<view class='ti'>答案解析</view>
<view class='vv'>正确答案B</view>
<view class='hui'>表征沥青路面材料稳定性你呢个的炉面使用指标是治什摸表征沥青路面材料稳定性你呢个的炉面使用指标是治什摸表征沥青路面材料稳定性你呢</view>
</view> -->

js

 data: {
    data:[
      {
        id:1,
        choose: '单项选择',
        title:'表征沥青路面材料稳定性你呢个的炉面使用指标是治什摸( )。',
        cont:['A.王森','B.泰森','C.詹姆斯','D.科比']
      },
      {
        id: 2,
        choose: '单项选择',
        title: '你叫什么名字',
        cont: ['A.王森', 'B.泰森', 'C.詹姆斯', 'D.科比']
      },
      {
        id: 3,
        choose: '多项选择',
        title: '他叫什么名字',
        cont: ['A.王森', 'B.泰森', 'C.詹姆斯', 'D.科比']
      },
      {
        id: 4,
        choose:'填空',
        title: '他叫什么名字',
      },
    ],
    list:{},
    time:10,
    fen:0,
    miao:0,
    che: false,
    checkArr: ['中国'],
    bei:true,
    piao:true
  },


onLoad: function (options) {
    // this.setTimeCount()
    if (this.data.data.length > 0){
      this.setData({
         list:this.data.data[0]
      })
    }
  },
  // xx
  che(){
    wx.navigateTo({
      url: '/pages/Examination/Examination',
    })
  },
  dati(){
    this.setTimeCount()
    this.setData({
      bei:false,
      piao:false
    })
  },
 
  // 倒计时
  setTimeCount: function () {
    let time = this.data.time
    var miao = this.data.miao
    var second = Math.floor(time % 60);      
    var minite = Math.floor((time / 60) % 60); //计算分
    this.setData({
      fen: minite,
      miao: second
    })
    time--;
    if (time <= 0) {
      time = 0;
      this.setData({
      miao:0
      })
      return false;
    }
    this.setData({
      time: time,
    })
    setTimeout(this.setTimeCount, 1000);
  },
  // 下一题
  nextt:function(e){
    var id = e.currentTarget.dataset.id;
    //console.log("ID"+(id+1));
    this.setData({
      list: this.data.data[id-1+1],
      che: false
    })
  },
  // 上一题
  question: function (e) {
    var id = e.currentTarget.dataset.id;
    console.log("ID"+(id+1));
    this.setData({
      list: this.data.data[id-1-1],
      che: false
    })

  },
  // 单选框选择
  radioChanges: function (e) {
    console.log(e)
    this.setData({
      arrs: e.detail.value
    })
    console.log(this.data.arrs)
  },
  // 多选框操作
  checkboxChange: function (e) {
    var arr = []
    this.setData({ checkArr: e.detail.value });
    console.log(this.data.checkArr)
  },

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,我可以为您提供一些基本的代码示例,方便您进行页面开发。 首先,您需要安装 Vue3 和 Element Plus: ```bash npm install vue@next element-plus --save ``` 然后,在您的 Vue 应用程序中导入和使用 Element Plus: ```javascript import { createApp } from 'vue' import ElementPlus from 'element-plus' import 'element-plus/lib/theme-chalk/index.css' const app = createApp(App) app.use(ElementPlus) app.mount('#app') ``` 接下来,您可以创建一个名为 `ExamPage.vue` 的组件,用于显示一道目: ```html <template> <div class="exam-page"> <h2>{{ question.title }}</h2> <div v-html="question.content"></div> </div> </template> <script> export default { props: { question: { type: Object, required: true } } } </script> <style scoped> .exam-page { max-width: 800px; margin: 0 auto; padding: 20px; } .exam-page h2 { font-size: 24px; font-weight: bold; margin-bottom: 10px; } .exam-page p { margin-bottom: 10px; } </style> ``` 在这个组件中,我们使用了一个 `question` 属性,它是一个包含目标和内容的对象。我们使用了 Element Plus 中的样式,确保页面呈现良好。 最后,您可以在您的 Vue 应用程序中使用这个组件来显示一道目。例如: ```html <template> <div class="exam"> <exam-page :question="question" /> </div> </template> <script> import ExamPage from './ExamPage.vue' export default { data() { return { question: { title: '科目一考试目', content: '<p>这是一道科目一考试目。</p>' } } }, components: { ExamPage } } </script> <style scoped> .exam { height: 100vh; display: flex; justify-content: center; align-items: center; } </style> ``` 在这个例子中,我们创建了一个名为 `Exam.vue` 的组件,它使用了我们刚刚创建的 `ExamPage.vue` 组件来显示目。我们将目数据传递给 `ExamPage` 组件,然后将其呈现在页面中。 这就是一个简单的使用 Vue3 和 Element Plus 来显示一道科目一考试目的例子。当然,您还需要根据您的实际需求进行修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值