如果忘记了搭建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. Kafka integration with Ganglia

    In this blog post I will show you kafka integration with ganglia, this is very interesting & imp ...

  2. [原创]基于SpringAOP开发的方法调用链分析框架

    新人熟悉项目必备工具!基于SpringAOP开发的一款方法调用链分析插件,简单到只需要一个注解,异步非阻塞,完美嵌入Spring Cloud.Dubbo项目!再也不用担心搞不懂项目! 很多新人进入一家 ...

  3. 分布式存储ceph——(5)ceph osd故障硬盘更换

    正常状态:

  4. JS JavaScript模块化(ES Module/CommonJS/AMD/CMD)

    前言 前端开发中,起初只要在script标签中嵌入几十上百行代码就能实现一些基本的交互效果,后来js得到重视,应用也广泛起来了, jQuery,Ajax,Node.Js,MVC,MVVM等的助力也使得 ...

  5. Charles抓包工具使用

    Charles抓包工具使用和进行接口数据模拟 打开软件,选择Tools  >>  Map Local  >>  勾选enable  >>  add  >> ...

  6. 一入OI深似海 3 —— 纪念我最后一次PJ(上)

    其实在比赛前一天中午上车前, 我还在机房打 I wanna, 感觉就是去杭州旅游的. 诶,还真是这样! 我和jwj在绍兴服务区买了金拱门, 拎着吃的回到车上的时候, 迎面而来羡慕的小眼神. 下午很早就 ...

  7. Java队列学习

    队列是Java集合中的重要组成部分,具有先进先出的特性,使其具有广泛的应用场景,比如排队等.因此今天就来学习一下Java中的队列.本文的例子使用的Java8环境. 继承类图 学习队列,首先要知道它的类 ...

  8. P2801 教主的魔法(分块入门)

    两个月之前听yyr学长讲的分块,感觉是个很神奇的暴力,但到现在还是懵的一匹 #include<bits/stdc++.h> using namespace std; ; int belon ...

  9. 结巴分词出现AttributeError: 'float' object has no attribute 'decode'错误

    将data转变为str格式 inputfile = 'comment2.csv'outputfile = 'comment2_cut.txt'datas = pd.read_csv(inputfile ...

  10. mysql学习基础知识3

    1.视图 简化sql语句的编写,限制可以查看的数据 一张虚拟的表,不占任何内存,查视图时都是临时从所查的表中拿数据 特点: 对于视图的增删改查 都会同步到原始表 对原始表的修改,会同步到视图内可查看的 ...