当前位置:网站首页>简易版 微信小程序开发之for指令、上传图片及展示效果优化
简易版 微信小程序开发之for指令、上传图片及展示效果优化
2022-07-03 03:23:00 【水w】
目录
五、for指令
编写goods页面
(1)wxml
内部相当于帮我们做了一个“for item in dataList” 循环
<!--pages/goods/goods.wxml-->
<text>商品列表</text>
<view>
<view wx:for="{
{ dataList }}">{
{index}}-{
{item}}</view>
</view>
<view>
<view wx:for="{
{ UserInfo }}">{
{index}}-{
{item}}</view>
</view>
或
<!--pages/goods/goods.wxml-->
<text>商品列表</text>
<view>
<view wx:for="{
{ dataList }}" wx:for-index="idx" wx:for-item="x">{
{idx}}-{
{x}}</view>
</view>
<view>
<view wx:for="{
{ UserInfo }}" wx:for-index="idx" wx:for-item="x">{
{idx}}-{
{x}}</view>
</view>
(2)js
// pages/goods/goods.js
Page({
/**
* 页面的初始数据
*/
data: {
dataList: ["输入","色佛诞日","生日歌"],
UserInfo: {
name:"alex",
age: 18,
gender: false
}
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})
展示效果:
六、上传图片
编写home页面:
(1)wxml
<!--pages/home/home.wxml-->
<view class="menu">
<view class="item">
<image src="/static/link-01.png"></image>
<text>精品</text>
</view>
<view class="item">
<image src="/static/link-01.png"></image>
<text>精品</text>
</view>
<view class="item">
<image src="/static/link-01.png"></image>
<text>精品</text>
</view>
<view class="item">
<image src="/static/link-01.png"></image>
<text>精品</text>
</view>
</view>
<navigator url="/pages/list/list?id=566">跳转页面</navigator>
<view bindtap="uploadImage">请上传图片:</view>
<view class="images">
<image wx:for="{
{images}}" src="{
{item}}"></image>
</view>
(2)js
// pages/home/home.js
Page({
/**
* 页面的初始数据
*/
data: {
images: ["/images/link-01.png","/images/link-02.png","/images/默认头像.jpeg"]
},
uploadImage() {
wx.chooseImage({
count: 9,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success:function(res) {
console.log(res)
}
})
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})
(3)wxss
/* pages/home/home.wxss */
image {
width: 100rpx;
height: 100rpx;
border-radius: 50rpx;
}
.menu {
display: flex;
/* 在水平方向排列 ,规定主轴方向*/
flex-direction: row;
/* 元素在水平方方向如何展示,规定在主轴方向如何展示:center */
justify-content: space-around;
}
.menu .item {
display: flex;
flex-direction: column;
align-items: center;
}
.images {
width: 200rpx;
height: 200rpx;
padding: 5rpx;
}
展示效果:
(1)点击“请选择图片”之后,会弹出一个选择页面 ,
(2)在弹出的选择页面 ,选择图片之后,console中会打印出选择的图片信息。
展示效果优化1:
(3)此时,我们修改uploadImage()函数,为了可以使我们选择的图片上传展示到页面上,
data: {
images: ["/images/link-01.png","/images/link-02.png","/images/默认头像.jpeg"]
},
uploadImage() {
var that = this
wx.chooseImage({
count: 9,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success:function(res) {
console.log(res)
that.setData({images: res.tempFilePaths})
}
})
},
(4)重新编译,点击“请选择图片”之后,在弹出的选择页面选择图片,
点击“打开”之后,页面的展示效果为,
展示效果优化2:
(3)此时,我们修改uploadImage()函数,为了可以使我们选择的图片可以上传展示到页面已有的图片之后,
data: {
images: ["/images/link-01.png","/images/link-02.png","/images/默认头像.jpeg"]
},
uploadImage() {
var that = this
wx.chooseImage({
count: 9,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success:function(res) {
console.log(res)
// 设置images,页面上的图片自动修改
// that.setData({images: res.tempFilePaths})
// 默认图片 + 选择的图片
that.setData({images: that.data.images.concat(res.tempFilePaths)})
}
})
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
},
(4)重新编译,点击“请选择图片”之后,在弹出的选择页面选择图片,
点击“打开”之后,页面的展示效果为,
边栏推荐
- The idea setting code is in UTF-8 idea Properties configuration file Chinese garbled
- BigVision代码
- Captura下载安装及在Captura配置FFmpeg
- node 开启服务器
- [combinatorics] basic counting principle (addition principle | multiplication principle)
- docker安装及启动mysql服务
- @Accessors annotation function specifies that the prefix follows the hump naming
- FileZilla Client下载安装
- 【PyG】理解MessagePassing过程,GCN demo详解
- Anhui University | small target tracking: large-scale data sets and baselines
猜你喜欢
Ansible introduction [unfinished (semi-finished products)]
Elsevier latex submitted the article pdftex def Error: File `thumbnails/cas-email. jpeg‘ not found: using draf
docker安装及启动mysql服务
Don't use the new Dede collection without the updated Dede plug-in
MongoDB簡介
The series of hyperbolic function in daily problem
3D drawing example
VS 2019安装及配置opencv
Idea format code idea set shortcut key format code
Hi3536C V100R001C02SPC040 交叉编译器安装
随机推荐
PAT乙级“1104 天长地久”DFS优化思路
Find the storage address of the elements in the two-dimensional array
QT based tensorrt accelerated yolov5
Stop using system Currenttimemillis() takes too long to count. It's too low. Stopwatch is easy to use!
Pytorch轻量级可视化工具wandb(local)
Advanced redis applications [password protection, data persistence, master-slave synchronization, sentinel mode, transactions] [not completed yet (semi-finished products)]
C programming learning notes [edited by Mr. Tan Haoqiang] (Chapter III sequence programming) 05 data input and output
Réglez la hauteur et lancez le système. Currenttimemillis catton
Basic operations of mongodb [add, delete, modify, query]
Don't use the new Dede collection without the updated Dede plug-in
The idea cannot be loaded, and the market solution can be applied (pro test)
float与0比较
@Accessors注解作用指定前缀遵守驼峰命名
解决高並發下System.currentTimeMillis卡頓
[Chongqing Guangdong education] cultural and natural heritage reference materials of China University of Geosciences (Wuhan)
The difference between static web pages and dynamic web pages & the difference between Web1.0 and Web2.0 & the difference between get and post
VS code配置虚拟环境
LVGL使用心得
File rename
UMI route interception (simple and rough)