为什么要使用return来返回数据:
因为不使用return包裹的数据会在项目的全局可见,会造成变量污染
使用return包裹后数据中变量只在当前组件中生效,不会影响其他组件。
基础数据绑定
变量赋值:
<script>export default {data: {return{title: 'Hello',name : 'hcoder'}}, .....</script>
在视图中使用 {{}} 调用变量:
<template><view class="content"><text class="title">{{title}}</text><view>hi....{{name}}</view></view></template>
数组形式的数据绑定:
data: {return {students : [{name : "张三", age : 18},{name : "李四", age : 20}]}},//调用<view>{{students[0]['name']}}{{students[0].name}}</view>
列表渲染:
for循环与小程序类似:item是默认变量名,index是默认下标。
<template><view><view v-for="(item, index) in students"><view class="persons">{{index}} - {{item.name}}</view></view></view></template><script>export default {data: {return {students : [{name : "张三", age : 18},{name : "李四", age : 20}]}},onLoad:function(options){console.log("onLoad");},onHide:function(){console.log("onHide");},onShow:function(){console.log("onShow");}}</script><style>.persons{width:750px; line-height:2.2em;}</style>//说明:正常展示效果需要删除 app.vue 内的全局样式(原因见视频教程)
条件渲染:
<template><view><view v-for="(item, index) in students"><view class="persons">{{index}} - {{item.name}}</view></view><view v-if="show">这里是条件展示的内容....</view></view></template><script>export default {data: {students : [return{{name : "张三", age : 18},{name : "李四", age : 20}}],show:false},
使用 hidden
<template><view><view v-for="(item, index) in students"><view class="persons">{{index}} - {{item.name}}</view></view><view v-hidden="show">这里是条件展示的内容....</view></view></template><script>export default {data: {return{students : [{name : "张三", age : 18},{name : "李四", age : 20}],show:true}},
**if 与 hiddenif会根据条件决定是否渲染,hidden 会渲染但根据条件决定是否展示。
