视图层的引用和模板使用

引用: axml提供两种文件引用方式import和include。 

   (1)import import可以加载已经定义好的template。 
            比如,在item.axml中定义了一个叫item的template。 


{{text}}
 

          
           然后,在index.axml中引用item.axml,就可以使用item模板。 

 

           import有作用域的概念,即只会import目标文件中定义的template。 
           比如:C import B,B import  A,在C中可以使用B定义的template,在B中可以使用A定义的template, 
           但是C不能使用A定义的template。

  


 A template 

 B template 

 

 


   (2)include include可以将目标文件除了的整个代码引入,相当于是拷贝到include位置如: 

 

 body 

 header 

 footer 


模板: axml提供模板(template),可以在模板中定义代码片段,然后在不同的地方调用。 
   (1)定义模板 使用name属性,作为模板的名字。然后在内定义代码片段。 


 {{index}}: {{msg}}  Time: {{time}} 
 

  (2)使用模板 使用is属性,声明需要的使用的模板,然后将模板所需要的data传入, 
    如: 

Page({
  data: {
    item: {
      index: 0,
      msg: 'this is a template',
      time: '2016-09-15'
    }
  }
})
 

   is属性可以使用Mustache语法,来动态决定具体需要渲染哪个模板。 

 odd  even 
 

注意:模板拥有自己的作用域,只能使用data传入的数据,但可以通过 onXX 绑定页面的逻辑处理函数 
推荐:使用 template 方式来引入模版片段,因为 template 会指定自己的作用域,只能使用data传入的数据,因此小程序会对此优化, 如果改 template 的 data 没有改变,该段 UI 并不会重新渲染。 

有什么问题请您在下面咨询,大家一起讨论交流。

上一篇:将因果关系估计引入推荐系统、提升推荐模型效果,快手新研究被WWW22接收


下一篇:阿里达摩院:含光NPU的算法与架构