在微信小程序中,要显示一张图片,有两种图片加载方式:
加载本地图片
- <image class="widget__arrow" src="/image/arrowright.png" mode="aspectFill">
- </image>
src="/image/arrowright.png" 这句就是加载本地图片资源的。想想 iOS 中的加载本地图片,imageName:, 类似。
加载网络图片
微信在加载网络这方面封装的还是很好的,包括语音和视频的加载。直接给'src'这个属性附上地址,它会自动加载。
- <image class="image_frame" src="{{imageUrl}}" mode="aspectFill">
- </image>
这个 imageUrl 是在 js 文件中数据
- data:{
- imageUrl:"http://img1.3lian.com/2015/w7/85/d/101.jpg"
- },
也可以直接写成
- <image class="image_frame" src="http://img1.3lian.com/2015/w7/85/d/101.jpg"
- mode="aspectFill">
- </image>
下来就看看 image 的一些属性
需要注意的是:image 组件默认宽度 300px、高度 225px
src 就是上面代码中用到的。
mode 有 12 种模式,其中 3 种是缩放模式,9 种是裁剪模式。
具体说明建议看官方文档,很详细。
很简单就这些。
遗留问题
在实践中,想实现这样一个功能:点击一个按钮,让这个图片重新加载。
不知道怎样可以在 js 文件中直接操作 image。后续学习或许会知道。哪位仁兄知道方法请在留言中不吝赐教。
补充
遗留问题已经找到答案。
在按键的响应方法中直接用 setData 给 imageUrl 设定新的地址即可
- downLoadImage:function(event){
- console.log(event)
- var that = this;
- this.setData({
- imageUrl:"http://h.hiphotos.baidu.com/zhidao/pic/item/6d81800a19d8bc3ed69473cb848ba61ea8d34516.jpg"
- })
- }
效果如下:
来源: http://www.phperz.com/article/17/0718/326804.html