当前位置: 首页 > Web前端 > HTML

微信小程序的template模版和component组件有什么区别

时间:2023-03-28 19:20:46 HTML

微信小程序的template模板和component组件有什么区别?需要在调用页面定义,component组件有自己的业务逻辑,可以看做一个独立的page页面。简单来说,如果只是为了展示,用模板就够了。如果涉及的业务逻辑越来越多,那么最好使用组件一。template模板:模板创建:建议单独创建一个template目录,并在template目录下创建一个管理模板文件。由于模板只有wxml和wxss文件,而小程序开发工具不支持快速创建模板,所以需要直接创建wxml和wxss文件。模板模板文件和样式文件只需要具有相同的名称即可。如果模板较多,建议在模板目录下创建一个子目录,用于存放单独的模板。模板文件:template.wxml文件中可以写多个模板,以名称区分:FirstName:{{firstName}},LastName:{{lastName}}clcikMe样式文件:模板有自己的样式文件(用户自定义)。/*templates/demo/index.wxss*/.tempDemo{width:100%;}view.tempDemo.name{color:darkorange}页面参考:page.wxml嵌入模板page.wxss@import"../../templates/demo/index.wxss"/*引入模板样式*/page.jsPage({/***页面初始数据*/data:{staffA:{firstName:'Hulk',lastName:'Hu'},staffB:{firstName:'Shang',lastName:'你'},staffC:{firstName:'Gideon',lastName:'Lin'}},clickMe(e){wx.showToast({标题:e.currentTarget.dataset.name,图标:“无”,持续时间:100000})}......})备注:一个模板文件中可以有多个模板,每个模板需要定义一个名字来区分。调用页面时,名称也用于指向对应的模板;template模板没有配置文件(.json)和业务逻辑文件(.js),所以需要在引用页面的js文件中定义template模板中的变量引用和业务逻辑事件;模板模板支持独立样式,需要定义在引用页面的样式文件中导入;页面应用模板需要先导入模板,然后嵌入模板2.Component组件:组件创建:新建组件目录-新建子目录-新建Component;组件写法:新的component组件也是由4个文件组成,和page类似,但是js文件和json文件不同于pagejs代码://components/demo/index.jsComponent({/***组件的属性列表*/properties:{name:{type:String,value:''}},/***组件的初始数据component*/data:{type:"component"},/***组件的方法列表*/methods:{click:function(){console.log("component!");}}})json配置文件:{"component":true,"usingComponents":{}}组件引用:页面中引用的组件需要在json配置文件中进行配置,代码如下:{"navigationBarTitleText":"templatedemo","usingComponents":{"demo":"../../components/demo/index"}}然后就可以在模板文件中使用了,其中name的值就是json配置文件中usingComponents的键值:就是这样。PS:组件中不会自动引用public样式,需要的话需要在样式文件中引入:@import"../../app.wxss";