能帮我写一段微信小程序实例代码吗 要求:用户输入数值并生成对应数字数量的卡片并并排向下排序
时间: 2024-02-22 10:00:40 浏览: 108
当然可以,以下是一个简单的微信小程序实例代码示例:
```
<!--index.wxml-->
<view class="container">
<view class="title">生成数字卡片</view>
<view class="content">
<text>请输入数字:</text>
<input placeholder="请输入数字" bindinput="inputNumber"/>
<button bindtap="generateCards">生成卡片</button>
</view>
<view class="card-container">
<block wx:for="{{cards}}" wx:key="index">
<view class="card">{{item}}</view>
</block>
</view>
</view>
//index.js
Page({
data: {
number: 0,
cards: []
},
inputNumber(event) {
this.setData({
number: event.detail.value
})
},
generateCards() {
const number = parseInt(this.data.number)
if (isNaN(number) || number <= 0) {
wx.showToast({
title: '请输入大于0的数字',
icon: 'none',
duration: 2000
})
return
}
const cards = []
for (let i = 1; i <= number; i++) {
cards.push(i)
}
this.setData({
cards: cards
})
}
})
//index.wxss
.container {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100vh;
}
.title {
font-size: 24px;
margin-bottom: 20px;
}
.content {
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 20px;
}
.text {
font-size: 14px;
margin-right: 10px;
}
input {
height: 30px;
width: 120px;
border: 1px solid #ccc;
border-radius: 4px;
padding: 0 10px;
margin-right: 10px;
}
button {
height: 30px;
width: 60px;
background-color: #4CAF50;
color: #fff;
border: none;
border-radius: 4px;
}
.card-container {
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.card {
display: flex;
align-items: center;
justify-content: center;
height: 100px;
width: 100px;
margin: 10px;
background-color: #f1f1f1;
border: 1px solid #ccc;
border-radius: 4px;
font-size: 24px;
}
```
这个微信小程序包括一个页面,其中包含一个输入框和一个生成卡片的按钮。当用户输入数字并点击按钮时,会生成对应数量的数字卡片并按照从上到下,从左到右的顺序排列。如果用户输入的不是大于0的数字,则会提示用户重新输入。
阅读全文