微信小程序的学习

微信小程序的开始尝试 TodoList


微信开发者工具生成 目录如下:


.
|-- app.js
|-- app.json
|-- app.wxss
|-- pages
| |-- index # 主页
| | |-- index.js
| | |-- index.json
| | |-- index.wxml
| | `-- index.wxss
| `-- log # 日志页面
| | |-- log.js
| | |-- log.json
| | |-- log.wxml
| | `-- log.wxss
`-- utils # 工具
`-- util.js

大体为:
每一个page即是一个页面文件 ,每个页面有一个js/wxml/wxss/json文件 规定:描述页面的这四个文件必须具有相同的路径与文件名。

全局下同路,为公共的逻辑,样式,配置

与html不同:用view text navigator 代替 div span a
官方文档

*.wxml: 数据驱动的视图层 + 微信提供了大量的组件 表单 导航 媒体 ...

好,那现在正式尝试TodoList~


开始完成wxml ,我在这里主要分成三部分
1.titleBar

<view class="titleBar">


&lt;div class="status"&gt;
&lt;!-- wxml 是一个模板 {{数据状态}} 数据的绑定
动态的 可编译的 活的 data 是活的 setData 只要状态一变 界面立即改变 --&gt;
&lt;text class="{{status=='1'?'active':''}}" data-status="1" bindtap="showStatus"&gt;全部&lt;/text&gt;
&lt;!--用data- 表示数据属性--&gt;
&lt;text class="{{status=='2'?'active':''}}" data-status="2" bindtap="showStatus"&gt;未完成&lt;/text&gt;
&lt;text class="{{status=='3'?'active':''}}" data-status="3" bindtap="showStatus"&gt;已完成&lt;/text&gt;
&lt;/div&gt;
&lt;div class="add"&gt;
&lt;button class="mini-btn" size="mini" type="warn" bindtap="addTodoShow"&gt;添加&lt;/button&gt; &lt;/div&gt;

</view>

2/scoll-view scroll-y class="lists"

<scoll-view scroll-y class="lists">


&lt;view class="item" wx:for="{{curLists}}" wx:key="index"&gt;
&lt;div class="content"&gt;
&lt;icon class="icon-small" bindtap="changeTodo" data-item="{{index}}" size="23" type="{{item.status ==='1'? 'success':'circle'}}"&gt;&lt;/icon&gt;
&lt;text class="title"&gt;{{item.title}}&lt;/text&gt;
&lt;text class="time"&gt;{{item.time}}&lt;/text&gt;
&lt;/div&gt;
&lt;/view&gt;

</scoll-view>

3/addForm

<view class="addForm {{addShow?'hide':''}}">


&lt;view class="addForm-div"&gt;
&lt;input type="text" placeholder="请输入任务" class="weui-input" bindinput="setInput" value="{{addText}}" /&gt;
&lt;view class="addForm-btn"&gt;
&lt;button type="warn" size="mini" class="weui-btn mini-btn" bindtap="addTodo"&gt;确定添加&lt;/button&gt;
&lt;button type="default" size="mini" class="weui-btn mini-btn" bindtap="addTodoHide"&gt;取消&lt;/button&gt;
&lt;/view&gt;
&lt;/view&gt;
&lt;/view&gt;

</view>


wxml 是一个模板 {{数据状态}} 数据的绑定


动态的 可编译的 活的 data 是活的 setData 只要状态一变 界面立即改变
我们在这里使用了data 来表示数据属性

写完了wxml 那让我们加上wxss样式看看效果把

TodoList wxss

在wxss中我们使用了弹性布局flex:1, 这种布局的方式使得我们不用计算大小了

我们当然不能只做一个切图仔啦


话不多说看看js的实现部分

数据 对应着 界面状态


默认的status是1是全部
setData改变 比如改成2 setData 2 已完成 3 未完成

界面状态,全部被data接管起来
当前点击条目的status要变成 success 数据 lists 跟当前条目相关的数据
将status的值 更新为 1


这样一个简单的TodoList框架就做好了

初学微信小程序 TodoList的更多相关文章

  1. 初学微信小程序

    最近微信推出了微信小程序,为此我学了几天,基本了解了组件及简单语法,但是今天我自己想要独立写一个demo时,忽然发现难道我的不是微信小程序的语法(我以前是iOS 开发,不用css),而是css样式的设 ...

  2. 初学微信小程序——配置问题(1)

    一.注册: 微信小程序账号注册:登录https://mp.weixin.qq.com  点击“立即注册”->”小程序” 注册完成后,下载微信小程序开发者工具: 依次点击:“首页”->“文档 ...

  3. 微信小程序-TodoList

    TodoList 博客班级 https://edu.cnblogs.com/campus/zjcsxy/SE2020 作业要求 https://edu.cnblogs.com/campus/zjcsx ...

  4. 初学微信小程序——配置问题(2)

    六.生命周期函数:   在微信公众平台指南中搜索生命周期,找到页面生命周期 比如,我打开cate.js并编写,代码如下: ** * 生命周期函数--监听页面加载 */ onLoad: function ...

  5. 近期热门微信小程序demo源码下载汇总

    近期微信小程序demo源码下载汇总,乃小程序学习分析必备素材!点击标题即可下载: 即速应用首发!原创!电商商场Demo 优质微信小程序推荐 -秀人美女图 图片下载.滑动翻页 微信小程序 - 新词 GE ...

  6. 微信小程序学习指南

    作者:初雪链接:https://www.zhihu.com/question/50907897/answer/128494332来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

  7. 小程序——微信小程序初学踩过的坑

    微信小程序初学踩过的坑 一.前言     最近因为某些需要和个人兴趣打算开发一下微信小程序,经过在官方网站上的基本了解,我大体知道了微信小程序开发的大致过程,其实最本质的就是MVVM,借用了很多模式上 ...

  8. 微信小程序的应用及信息整合,都放到这里了

    微信小程序终于开始公测了,这篇文章也终于可以发布了. 这篇文章可以说是微信小程序系列三部曲最后一篇.8 月份,小程序推出前,我写了<别开发 app 了>详细阐述了为什么创业应该放弃原生 a ...

  9. 微信小程序导航:官方工具+精品教程+DEMO集合(1月7更新)

    1:官方工具:https://mp.weixin.qq.com/debug/w ... tml?t=14764346784612:简易教程:https://mp.weixin.qq.com/debug ...

随机推荐

  1. (9)css 链接

    本篇学习资料的主要介绍: 超链接文本的样式设计.鼠标指针效果. 1.超链接文本的样式设计 普通的网站中,所有的页面都会通过超链接相互链接在一起,这样才会形成一个有机的网站. 超链接是网页上普通的元素, ...

  2. 【练习】Java实现的杨辉三角形控制台输出

    import java.util.Scanner; /** * YangHui_tst01 * @author HmLy * @version 000 * - - - - - - - * 练习代码.( ...

  3. WPF-DataGrid(数据表格)美化

    我们不多哔哔先上图: 数据表格使用背景: 当我们在做二次开发发现我我们的表格无法向WEB的表格一样好看,这时我们就需要对数据表格进行美化和重构 表格美化思维引导: WPF数据表格是由表头和表体(内容) ...

  4. 【SpringCloud构建微服务系列】学习断路器Hystrix

    一.Hystrix简介 在微服务架构中经常包括多个服务层,比如A为B提供服务,B为C和D提供服务,如果A出故障了就会导致B也不可用,最终导致C和D也不可用,这就形成了雪崩效应. 所以为了应对这种情况, ...

  5. iOS Debug心得 (持续更新)

    最近在维护一个内部比较混乱的APP,Debug的时候遇到很多比较痛苦的地方, 因此做一个Debug记录,对以后的开发会有比较大的帮助: 这样,在开发新项目的时候就可以争取把一些BUG扼杀在襁褓中. & ...

  6. [POI2007]办公楼biu

    Description FGD开办了一家电话公司.他雇用了N个职员,给了每个职员一部手机.每个职员的手机里都存储有一些同事的电话号码.由于FGD的公司规模不断扩大,旧的办公楼已经显得十分狭窄,FGD决 ...

  7. _bzoj1026 [SCOI2009]windy数【数位dp】

    传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1026 数位dp果断记忆化搜索,代码量少~ 程序里我用11代表前导零. #include &l ...

  8. jmeter(四)检查点

    JMeter也有像LR中的检查点,本篇就来介绍下JMeter的检查点如何去实现. JMeter里面的检查点通过添加断言来完成. 检查点:上一章讲到,我们对用户名和密码进行了参数化,那么怎样来判断jme ...

  9. SharePoint Server 2013 Search Service stop

    管理中心 - 系统设置 - 管理服务器上的服务:“搜索主机控制器服务” 停止即可,服务器管理 - 工具 - 服务 :sharepoint search host controller 服务会自动禁用.

  10. Webform 内置对象 Response对象、Request对象,QueryString

    Request对象:获取请求Request["key"]来获取传递过来的值 QueryString:地址栏数据传递 ?key=value&key=value注意事项:不需要 ...