[TOC]
```
## //获取组件中的传值
onLike(e) {
var behavior = e.detail.behavior;
var id = this.data.classic.id;
var type = this.data.classic.type;
likeModel.getLike(behavior, id, type);
}
```
## 获取更新数据
```
_updateData(nextOrprevious) {
/* 调用models里的获取 缓存或发送http */
classicModel.getClassic(this.data.classic.index, nextOrprevious, res => {
/* 更新点赞的状态 */
likeModel.getLikeStatus(res.type,res.id,res=>{
this.setData({
like:res.like_status,
count:res.fav_nums
})
})
})
}
```
## models/like.js
```
//HTTP请求(在5.HTTP的封装里)
import {HTTP} from "../utils/http";
class LikeModel extends HTTP {
getLike(behavior,id,type){
const url = behavior?'/like':'/like/cancel'
this.request({
url,
method:"POST",
data:{
art_id:id,
type
}
})
}
/* 获取 期刊 点赞的信息 */
getLikeStatus(type,id,callback){
this.request({
url:`/classic/${type}/${id}/favor`,
success: res =>{
callback(res)
}
})
}
}
export {LikeModel}
```
## like组件
```
methods: {
onLike(){
var like = this.properties.like;
var count = this.properties.count;
if(like){
this.setData({
like:false,
count:count-1
})
}else{
this.setData({
like:true,
count:count+1
})
}
//向父组件传值
var behavior = this.data.like;
this.triggerEvent('like',{
behavior
})
}
}
```
## wxml
```
<view class="like">
<image src="{{like?yesSrc:noSrc}}" alt="" bind:tap="onLike" ></image>
<text class="count">{{count}}</text>
</view>
```
- 开发环境及接口
- 0.豆瓣接口
- 1.开发环境配置
- 2.一些相关文档
- 小程序实例效果
- 第0节、TodoList
- 第一节、豆瓣相关
- 1、tabBar的配置及导航加标题
- 2、数据加载及下拉加载
- 3、加载相关
- 4、轮播
- 5、星星评分
- 第二节、音乐播放相关
- 1.点击收藏分享
- 2.音乐播放
- 初始版
- 组件版
- 组件加强版
- 3.点赞
- 点赞初级版
- 点赞第二版
- 5.左右按钮
- 6.缓存
- 第三节、补充
- 地图
- 点击拍照换图
- 扫一扫
- 小程序语法
- 第一节 、HTTP的封装
- 0.http请求
- 1.function封装
- 2.class封装http
- 3.promise封装
- 4.config地址
- 第二节、组件
- 2.组件单独设置样式
- 3.一些有意义的标签
- 4.behavior
- 5.SLOT
- 6.左右按钮
- 5.点赞组件
- 6.用户授权
- 图片按钮 如分享
- 第三节、api
- 1.页面跳转
- 获取input里的值
- 1.添加评论
- 2.搜索框
- 3. 获取input里的值
- 2.设置缓存
- 3.模态框,弹出框
- 4.分享showActionSheet
- 5.定义全局的数据
- 2. 基础知识
- 1.setData
- 2.文件结构
- 3.wxml语法
- 第一节 数据绑定
- 第二节 列表渲染
- 第三节 条件渲染
- 第四节 模板
- 第五节 事件
- 第六节 引用
- 4.wxs
- 1.文本缩进问题
- 5.小程序中遇到的wxss 问题
- 1.width100%越界问题
- 废弃的文件
- 一个完整的小程序
- 1.启动页面
- 2.yuedu轮播+封装及数据调用
- yuedu的详情页
- 3.电影
- movie-more
- web-view