如果忘记了搭建json-server的过程,可看上一篇随笔

1. index.xml  代码

 <!--index.wxml-->
<swiper indicator-dots="{{indicatorDots}}" indicator-dots="true"
autoplay="{{autoplay}}" autoplay="true" interval="{{interval}}" duration="{{duration}}">
<block wx:for="{{imgUrls}}" wx:key="">
<swiper-item>
<image src="{{item}}" class="slide-image"/>
</swiper-item>
</block>
</swiper>
<view class='pro-list'>
<view class='pro-item' wx:for="{{ proList}}" wx:key="" bindtap='toDetail' data-index="{{index}}">
<image class='pro-logo' src="{{item.img}}"></image>
<view class='pro-body'>
<view class='pro-title'>{{item.title}}</view>
<text class='pro-desc'>{{item.desc}}</text>
<view class='pro-footer'>
<image class="btn-detial" src="/images/btn_detail.png"></image>
<button class="btn-ask" open-type="contact">
<image class='btn-img' src="/images/btn_ask.png"/>
</button>
</view>
</view>
</view>
</view>

2.index.wxss

 /**index.wxss**/
swiper{
width:100%;
height:340rpx;
}
.slide-image{
display: block;
width:100%;
height:100%;
}
.pro-list{
width: 100%;
height:auto;
}
.pro-item{
padding:30rpx;
overflow: hidden;
}
.pro-logo{
width:190rpx;
height:190rpx;
float: left;
}
.pro-body{
margin-left:213rpx;
}
.pro-title{
color:#212121;
font-size: 34rpx;
line-height: 1;
}
.pro-desc{
font-size: 24rpx;
color:#9a9a0a;
line-height:1.2;
}
.pro-footer{
overflow: hidden; }
.btn-detial{
float: left;
width:170rpx;
height:52rpx;
}
.btn-ask{
padding:0;
float:left;
width:224rpx;
height:52rpx;
margin-left:20rpx;
line-height: 1;
}
.btn-img{
width:100%;
height:100%;
}

3.index.js

//index.js
//获取应用实例
const app = getApp()
Page({
data: {
imgUrls: [
'/images/swiper01.jpg',
'/images/swiper02.jpg',
'/images/swiper03.jpg'
],
indicatorDots: false,
autoplay: false,
interval: 5000,
duration: 1000,
proList: null,
},
//事件处理函数
toDetail: function (e) {
console.log(e);
var index = e.currentTarget.dataset.index;
console.log(index);
},
getProList:function(){
var self = this;
wx.request({
url: 'http://127.0.0.1:3000/data',
method: 'GET',
success: function (res) {
console.log(res);
self.setData({
proList: res.data,
})
}
});
},
onLoad: function () {
this.getProList();
}
})

4. index.json (此json不是在项目里的index.json内写的,而是自己找个文件夹放置,然后json-sever index.json打开的,不明白可看上篇随笔)

 {
"data": [
{
"img": "/images/pro_01.jpg",
"title": "test",
"desc": "这是个测试1"
},
{
"img": "/images/pro_02.jpg",
"title": "test",
"desc": "这是个测试2"
},
{
"img": "/images/pro_03.jpg",
"title": "test",
"desc": "这是个测试3"
},
{
"img": "/images/pro_01.jpg",
"title": "test",
"desc": "这是个测试4"
}
]
}

效果图

小白之微信小程序第一次完成搭建本地服务与页面进行交互的更多相关文章

  1. 微信小程序图片保存到本地

    微信小程序图片保存到本地是一个常用功能: 这里讲解下完整实现思路: 因为微信官方的授权只弹一次,用户拒绝后再次调用,就需要结合button组件的微信开放能力来调起,以下方案在微信各种授权中可参考. w ...

  2. 微信小程序一步步搭建商城系列-01-开篇

    1.小程序介绍 小程序是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或者搜一下即可打开应用.也体现了“用完即走”的理念,用户不用关心是否安装太多应用的问题.应用将无处不 ...

  3. 微信小程序开发环境搭建

    关注,QQ群,微信应用号社区 511389428 微信小程序可谓是今天最火的一个名词了,一经出现真是轰炸了整个开发人员,当然很多App开发人员有了一个担心,微信小程序的到来会不会给移动端App带来一个 ...

  4. 小白学微信小程序

    奔着实用性的目的-测试孩子的认字量,开发了一个微信小程序-测字大王.上下班路上看书看了一个星期,代码前后共写一个星期.现在小程序已经对外开放,share下我的开发过程吧. 一 工具准备 首先先过一篇 ...

  5. 《微信小程序七日谈》- 第四天:页面路径最多五层?导航可以这么玩

    <微信小程序七日谈>系列文章: 第一天:人生若只如初见: 第二天:你可能要抛弃原来的响应式开发思维: 第三天:玩转Page组件的生命周期: 第四天:页面路径最多五层?导航可以这么玩 微信小 ...

  6. 微信小程序wxss的background本地图片问题

    在web 或者webapp开发中我们习惯了直接饮用本地图片做背景,例如 .aaa { background: url('img/1.png'); } 但是这种引用方式在微信小程序中是无法使用的,控制台 ...

  7. 微信小程序 功能函数 openid本地和网络请求

    本地-------------------------------------------------------------------------------------------------- ...

  8. 微信小程序自学第二课:app及页面的生命周期、使用setData绑定数据

    一.App声明周期 1.App() app.js中的App() 函数用来注册一个小程序.接受一个 object 参数,其指定小程序的生命周期函数等. 示例代码: App({ onLaunch: fun ...

  9. 微信小程序web-view之动态加载html页面

    官方推出的web-view方便了很多开发人员. 我们在做的时候,经常会想到写一个小程序的page然后通过动态加载web-view的形式来完成其他功能页面的开发. 之前研究web-view的时候发现网上 ...

随机推荐

  1. 随机排序std::vector,扑克牌,麻将类尤其合用

    有些需要重新对std::vector对象重新排序,特别是游戏,例如说:扑克牌,麻将,抽奖等,C++标准已经为std::vector写好了随机排序的方式,这里做个笔记: #include <alg ...

  2. 在windows系统下安装linux虚拟机(VMware)

    一.下载Vmware安装包(此处我安装的是VMware-workstation-full-14.1.3) 链接: https://pan.baidu.com/s/12xT1JaA7eheEgFfM-2 ...

  3. 017_python常用小技巧

    一.进行十六进制运算 print(hex(int("6500000001", 16) - int("640064c6e7",16))) 0xff9b391a

  4. 使用Swagger辅助开发Fabric Application的Web API

    前面的几篇博客,我们已经把Fabric环境搭建好了,也可以使用Go开发ChainCode了,那么我们在ChainCode开发完毕后,可以通过CLI来测试ChainCode的正确性,ChainCode开 ...

  5. 《JavaScript设计模式与开发实践》笔记第八章 发布-订阅模式

    第八章 发布-订阅模式 发布-订阅模式描述 发布-订阅模式又叫观察者模式,它定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知. 发布-订阅模式可以广泛应用于 ...

  6. SpringMVC实现文件下载时,请求路径中的扩展名被省略

    问题描述 问题是这样的,我写了一个DownloadController,用来处理下载请求,预期效果如下: 客户端浏览器在访问URL -->   http://localhost:8080/ssm ...

  7. (二)jdk8学习心得之Lambda表达式

    二.Lambda表达式 1. 格式 (参数1,参数2,…,参数n)->{方法体} 注意: (参数1,参数2,...,参数n)要与方法接口中的参数一致,但是名字可以不一样. 此外,方法类型接口,有 ...

  8. php框架之thinkphp

    日常开发中经常使用thinkphp5进行开发工作,总结一些使用中遇到的问题和使用的东西 1. web内置服务 V5.1.5+版本开始,增加了启动内置服务器的指令,方便测试 >php think ...

  9. js 实现数据结构 -- 集合

    原文: 在Javascript 中学习数据结构与算法. 概念: 即数学中的集合,在计算机科学中被应用成数据结构. 当然,集合中的数据具有不重复的特性.js 集合的原理大致上是 Object 的键值对 ...

  10. Azure DevOps

    Azure DevOps https://azure.microsoft.com/zh-cn/services/devops/ It looks great!