第四章课后习题

本文详细介绍了如何在微信小程序中使用canvas组件绘制五圈图形,并展示了书单页面和拼车小程序部分界面的实现。同时,还提供了一个操作题,涉及日期计算和文本动态更新的代码示例。
摘要由CSDN通过智能技术生成

第一题

使用canvas组件实现,五圈的绘制

示例代码如下:

<!-- wq.wxml -->
<canvas canvas-id="myCanvas" style="height: 300px;"></canvas>

//  wq.js
Page({
  onReady:function (e){
const ctx = wx.createCanvasContext('myCanvas')
ctx.beginPath()
ctx.arc(100, 100, 50, 0, 2 * Math.PI)
ctx.setStrokeStyle('#0000FF')
ctx.stroke()
 
ctx.beginPath()
ctx.arc(160, 100, 50, 0, 2 * Math.PI)
ctx.setStrokeStyle('#FFFF00')
ctx.stroke()
 
ctx.beginPath()
ctx.arc(220, 100, 50, 0, 2 * Math.PI)
ctx.setStrokeStyle('#000000')
ctx.stroke()
 
 
ctx.beginPath()
ctx.arc(130, 150, 50, 0, 2 * Math.PI)
ctx.setStrokeStyle('#00FF00')
ctx.stroke()
 
ctx.beginPath()
ctx.arc(190, 150, 50, 0, 2 * Math.PI)
ctx.setStrokeStyle('#FF0000')
ctx.stroke()
 
ctx.draw()
  }
})

运行结果如下:

第二题 

使用相应组件,完成书单页面

示例代码如下:

<!-- sd.wxml -->
<view>
  <image src="../image/fm.png" style="width: 400px"/>
</view>
<view class="lili" style="border-bottom: 3px solid black;">
   <image src="../image/krrj.png" style="height: 170px;width: 170px;"/>
   <view class="krrj" style="width: 140px;">
    <view style="font-weight: bolder;">狂人日记</view>
    <view style="font-weight: bold;">鲁迅</view>
    <view style="font-size: 12px;">《狂人日记》是鲁迅创作的第一篇短篇白话文日记体小说,也是中国第一部现代白话小说,写于1918年4月。该文首发于1918年5月15日4卷5号的《新青年》月刊。</view>
   </view>
   </view>
   <view class="zjj">
   
   <image src="../image/zhxs.png" style="height: 170px;width: 170px;"/>
 
    <view class="zhxs" style="width: 140px;">
    <view style="font-weight: bolder;">朝花夕拾 </view>
    <view style="font-weight: bold;">鲁迅</view>                         
 <view style="font-size: 12px;">
  朝花夕拾》原名《旧事重提》,是现代文学家鲁迅的散文集,收录鲁迅于1926年创作的10篇回忆性散文,1928年由北京未名社出版,现编入《鲁迅全集》第2卷。</view>
  </view>
   </view>

/* sd.wxss */
.lili ,.zjj{
  clear:right;
  height: 170px;
}
.krrj,.zhxs{
  float:right;
  font-size: 20px;
  width: 100px;
}

sd.json代码:

{
  "navigationBarTitleText": "书单",
  "usingComponents": {
   
  }
}

 

运行结果如下:

第三题 

使用相应组件,完成找拼车小程序部分界面

示例代码如下:

<!--index.wxml-->
<view style="background-color: black;height: 60px;"><view style="color: white;padding-top: 20px;">×西安找拼车</view>
</view>
<view style="color:grey;padding-top: 10px;background-color: darkgray;height: 35px;">
联系方式(手机号和微信至少填一项)</view>
<view class="li" style="border-bottom: 1px solid darkgrey;padding: 0px;"></view>
<view>
  <view style="font-size: 20px;position: absolute;top: 115px;">称呼*</view>
  <view style="font-size: 20px;color: grey;position: absolute;left: 140px;top:115px">请输入称呼</view>
</view>
<view class="li" style="border-bottom: 1px solid darkgrey;padding: 20px;"></view>
<view>
  <view style="font-size: 20px;position: absolute;top:150px">手机号</view>
  <view style="font-size: 20px;color: grey;position: absolute;left: 140px;top:150px">请输入手机号</view>
</view>
<view class="li" style="border-bottom: 1px solid darkgrey;padding: 20px;"></view>
<view>
  <view style="font-size: 20px;position: absolute;top: 195px;">微信号</view>
  <view style="font-size: 20px;color: grey;position: absolute;left: 140px;top:195px">请输入微信号</view>
</view>
<view class="li" style="border-bottom: 1px solid darkgrey;padding: 23px;"></view>
<view style="color:grey;padding-top: 10px;background-color: darkgray;height: 35px;">
拼车信息</view>
<view class="li" style="border-bottom: 1px solid darkgrey;padding: 0px;">
</view>
<view>
  <view style="font-size: 20px;position: absolute;top: 290px;">出发地点*</view>
  <view style="font-size: 20px;color: grey;position: absolute;left: 140px;top:290px">限7个字</view>
</view>
<view class="li" style="border-bottom: 1px solid darkgrey;padding: 25px;"></view>
<view>
  <view style="font-size: 20px;position: absolute;top: 340px;">目的地*</view>
  <view style="font-size: 20px;color: grey;position: absolute;left: 140px;top:340px">限7个字</view>
</view>
<view class="li" style="border-bottom: 1px solid darkgrey;padding: 25px;"></view>
<view>
  <view style="font-size: 20px;position: absolute;top: 390px;">空座位*</view>
  <view style="font-size: 20px;color: grey;position: absolute;left: 140px;top:390px">请输入空座位</view>
</view>
<view class="li" style="border-bottom: 1px solid darkgrey;padding: 25px;"></view>

运行结果如下:

 

操作题

示例代码如下:

<!-- pp.wxml -->
<view style="text-align: center;">中国现阶段人均寿命900个月</view>
<form bindsubmit="bind" style="line-height: 60px;">
<view style="display: flex; font-size: 20px;">
<input type="text" name="time" placeholder="请输入时间" class="mm"/>至今:{{people}}个月</view>
<view style="display: flex;">
<button formType="submit" class="bt">请输入后再点击此按钮</button>
<button formType="reset" style="width: 150px;font-size: 13px;">清除记录</button>
</view>
</form>
<view style="margin-top:50px;">
<image src="../images/hong.jpg" class="r" style="width: 250px;" />
</view>
<view style="width: 350px;">
  <text bindtap="changeText1">{{ text1 }}</text>
</view>

// pp.js
Page({
  data:{  
   text1: '点击',
       people:new Date().toLocaleDateString()
 
     },
   changeText1: function() {
     this.setData({
       text1: '能把在前面行走的机会抓住的人,十有八九都会成功。'
     });
   },
     bind:function(e){
       var time = new Date().toLocaleDateString()
       var year = time.substring(0,time.indexOf("/"))
       var mo = time.substring(time.indexOf("/")+1,time.lastIndexOf("/")) 
       
       var value = e.detail.value.time
       var year2 = value.substring(0,time.indexOf("/"))
       var mo2 = value.substring(time.indexOf("/")+1,time.lastIndexOf("/"))
   
       var m1 = (year - year2 -1)*12+12-(mo2-mo)
       this.setData({
         people : m1
       })
     }
})

/* pp.wxss */
.mm{
  width: 110px;
  padding-top: 18px;
  padding-left: 30px;
}
.bt{
  padding-right: 20px;
  width: 175px;
  font-size: 13px;
  font-weight: bold;
}
.r{
  width: 190px;
  height: 350px;
  margin-left: 80px;
 
}

运行结果如下:

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值