数据绑定是用template7,官网,framework7内置template7,不用单独下载,下面介绍一些简单的绑定

当你的数据是个数组

return{
data:function(){
let item=[
{name:"jack",age:"18"},
{name:"tom",age:"19"}
]
return {
data:item,
sex:"男"
}
}
}

        {{#each data}}       //data是个数组 ,用 #each

        <div>Name:{{name}},Age:{{age}}</div>

        <span>{{../sex}}</span>      //sex不是data的子集,要从#each外部取,所以要用 ../sex ,如果#each外部还有父级  ,则用 ../../sex

        {{/each}

当你的数据是个object

return{
data:function(){
let item={
name:"jack",
age:18,
}
return {
data:item
}
}
}
   <div>{{data.name}},{{data.age}}</div>        

或者不管是数组还是对象,都可以这样

return{
data:function(){
let people=[
{
name: 'John Doe',
age: 18
},
{
name: 'Mark Johnson',
age: 21
}
];
let props={
power: '150 hp',
speed: '200 km/h',
};
return {
peoples:people,
props:props
}
}
        {{#peoples}}
<div>{{name}},{{age}}</div>
{{/peoples}} {{#props}}
{{power}},{{speed}}
{{/props}}

当你的数据是从服务器获取时,上一章讲过我们用$setState,

如果你要绑定的数据是object,并且层级很多的话,需要这样写

return{
data:function(){
return {
data:{},
obj:{ //为了避免报undefined,要把数据结构写上
a:{
b:{
cc:""
}
}
}
}
},
on:{
pageInit:function(){
let item={
name:"jack",
age:18
};
let item2={
a:{
b:{
name:"tom"
}
}
}
this.$setState({
data:item,
obj:item2
});
}
}
        <div>  {{data.name}},{{data.age}} </div>

        <div>{{obj.a.b.name}}</div>

有时候可能需要对数据进行判断,

<template>
<div class="page"> {{#if data.flag}} //if能做true或false判断
<div>{{text}}</div>
{{else}}
<div>False</div>
{{/if}} </div>
</template>
<script>
return{
data:function(){
let item={
flag:true
};
return {
data:item,
text:"True"
}
} }
</script>

当你要做些复杂判断,比如表达式的值不是true或者false的时候,就要用 js_if

<template>
<div class="page">
{{#data}} {{#js_if "this.age>=18"}} //注意用 " " 包起来 this是 对当前上下文的引用
成年{{sex}}
{{else}}
未成年{{sex}}
{{/js_if}} {{/data}}
</div>
</template>
<script>
return{
data:function(){
let item={
age:18,
sex:"男"
};
return {
data:item,
}
} }
</script>

有时候可能要对数据进行处理再显示

<template>
<div class="page">
{{#data}}
{{js "this.price*1.2"}} //注意用 "" 包起来
{{js "this.buy?'买':'不买' "}}
{{/data}}
</div>
</template>
<script>
return{
data:function(){
let item={
price:100,
buy:true
};
return {
data:item,
}
} }
</script>

 

framework7 入门(数据绑定)的更多相关文章

  1. Entity Framework7 入门之全功能.NET版本下使用EF7(含源码)另附数据迁移常见错误处理

    Entity Framework7 入门之全功能.NET(Console, WinForms, WPF等)使用EF7 昨天,我们介绍了EF的新特性和开发计划,如果你还不了解,请移步 Entity Fr ...

  2. (二)cordova+framework7入门——笑笑APP

    [前言] framework7确实做的很赞,但是一直各种原因没有做什么app, 这个感觉就像大厨遇到百年难见的好材料,不炒个菜憋的慌, 机缘巧合周一周二两个晚上做了一个简单app,先看下效果: ios ...

  3. Entity Framework7 入门之全功能.NET(Console, WinForms, WPF等)使用EF7

    昨天,我们介绍了EF的新特性和开发计划,如果你还不了解,请移步 Entity Framework7 有哪些不同?现在开发到什么程度了? .今天,我们开学习全功能.NET(Full .NET)下使用EF ...

  4. Framework7 - 入门教程(安装、配置、创建一个H5应用)

    1,Framework7介绍 (1)Framework7 是一个开源免费的框架.可以用来开发混合移动应用(原生和 HTML 混合)或者开发 iOS & Android 风格的 WEB APP. ...

  5. Angular2入门-数据绑定

    ▓▓▓▓▓▓ 大致介绍 Angular2中数据绑定的方式默认是以单向方式,数据绑定的方式可以分为: 1.属性绑定和插值表达式 组件类-> 模板 2.事件绑定:模板 -> 组件类 3.双向绑 ...

  6. framework7 入门(数据获取和传递)

    数据获取 framework7自带request方法 , var app = new Framework7({...});app.request(parameters) 或者 Framework7.r ...

  7. framework7 入门(基础布局)

    个人认为framework7是个很好的移动端框架,自带路由.下拉刷新.无限加载.时间线.各种dialog.环形图等,基本能满足大部分app的需求,可以和vue,webpack 等各种搭配. 这里讲一下 ...

  8. 前端移动框架Framework7入门

    正版官网:https://framework7.io/  (英文) 对应国内:http://www.framework7.cn/ (中文) 本地构建步骤(Demo级别) 1.HTML结构 2.引入Fr ...

  9. Android Kotlin 数据驱动模板

    Android开发人员文档: 数据绑定入门 数据绑定库 生成的绑定类 布局和绑定表达式 1. 搭建环境build.gradle:app apply plugin: "kotlin-kapt& ...

随机推荐

  1. AXI_DMA IP学习

    参考:PG201  AXI DMA v7.1    AXI IP核 功能:一旦处理器配置好传输方式之后,DMA可以自己完成内存数据的搬进或者搬出,而不需要处理器的介入.如果使用方法得当,DMA可以显著 ...

  2. python中的多线程和多进程编程

    注意:多线程和多线程编程是不同的!!! 第一点:一个进程相当于一个要执行的程序,它会开启一个主线程,多线程的话就会再开启多个子线程:而多进程的话就是一个进程同时在多个核上进行: 第二点:多线程是一种并 ...

  3. 题解-HAOI2018全套

    去冬令营转了一圈发现自己比别人差根源在于刷题少,见过的套路少(>ω<) 于是闲来无事把历年省选题做了一些 链接放的都是洛谷的,bz偷懒放的也是链接 AM.T1 奇怪的背包 Problem ...

  4. nginx conf_ctx ****

    http://blog.chinaunix.net/uid-27767798-id-3840094.html 断断续续看完了,还是没有全部清晰

  5. 奇yin技巧

    关于一些奇yin技巧 关于删除字符串中的一些字串,并且考虑新的字串 例题:luogu4824 luogu3121 方法:开一个栈记录,发现字串后剪去字串长度. for(int i=1;i<=le ...

  6. ASP.NET Core 中使用Session会话

    添加Session Nuget包 更新Startup.cs文件 在ConfigureServices方法中添加如下代码 services.AddSession(options => { // S ...

  7. java异常,异常处理,异常类 关键字:throws 和 throw 自定义的异常类

    package cn.kecheng; import java.util.Scanner; /**异常:异常是指在程序的运行过程中所发生的不正常的情况,它会中断正在运行的程序 异常处理机制:java中 ...

  8. Java线段树

    线段树不是完全二叉树,是平衡二叉树 堆也是平衡二叉树 堆满二叉树: h层,一共有2^h-1个节点(大约是2^h) 最后一层(h-1层)有2^(h-1)个节点 最后一层的节点数大致等于前面所有层节点之和 ...

  9. ***阿里云ECS实战配置虚拟主机 + Apache 配置虚拟主机三种方式

    阿里云ECS实战配置虚拟主机 买了一台ECS阿里云服务器,性能感觉有点富余,想着可以陪着虚拟主机多一些WWW目录好放一些其他的程序.比如DEMO什么的. 今天研究了下,主要是就是做基于不同域名的虚拟主 ...

  10. jdbc crud

    最近在做一个mybatis的sql审计,所有需要原生的使用一下jdbc,基于次,复习一下自己的基础知识 github 地址: https://github.com/warriorg/nodes/tre ...