这是我参与8月更文挑战的第10天,活动详情查看:
更文挑战json
自定义组件,指的是由开发者本身定义的组件,而不是微信定义的组件。服务器
定义组件第一步:新建一个文件夹专门用来盛放全部的自定义组件。文件夹名称随意。微信
第二步:在该文件夹上右击鼠标 会弹出一个新建列表markdown
点击列表中的新建Componentsxss
此时,会让用户输入一个名称,该名称就是组件名称。函数
输入名称点击肯定,出现了四个文件工具
这四个文件就是页面所需的四个文件。post
modal.js:微信支付
页面的js文件中,是调用了Page函数,该函数用于注册页面。this
这里的modal中调用的是Component函数。用于注册组件
modal.wxss:用于定义组件的样式
modal.wxml: 用于定义组件的结构
modal.json: 用于定义组件的配置
第一步: 在要使用该组件的页面的json文件中,配置 usingComponets
{
"usingComponents": {
"custom": "/components/modal/modal"
}
}
复制代码
usingComponents: 是一个对象
对象的key表示自定义组件在当前页面中使用的时候的名称
对象的value表示自定义组件的路径
第二步:使用自定义组件
在页面的wxml文件中,使用<custom></custom>
有些时候,咱们想要在组件中,定义子组件。
好比一个组件,定义了表单内容。可是没有定义标题。此时咱们能够经过slot组件“预留”一个地址。供使用该组件的用户本身放置子组件。
自定义组件内:
<form>
<view> <slot></slot> </view>
<view> <label>用户名</label><input type='text'></input> </view>
</form>
复制代码
此时,咱们能够在页面内使用时在组件开始标签与闭合标签之间,写子组件:
<custom>
<text>登陆表单</text>
</custom>
复制代码
最终的渲染结果就是将<slot></slot>
换成<text>登陆表单</text>
假如,上面的表单中,咱们不单单预留一个标题,还预留一个别的位置。
此时,依旧使用slot,可是须要进行配置。
第一步:在自定义组件的JS文件中,定义options
// components/modal.js
Component({
options: {
"multipleSlots": true
}
})
复制代码
第二步:在自定义组件的WXML文件中,定义多个slot,而且给定name属性
第三步:在使用自定义组件的页面中,填入多个子组件,并给每个子组件slot属性
<custom>
<text slot="a">注册表单</text>
<text slot="b">12312321321</text>
</custom>
复制代码
在自定义组件的JS文件中,有一个函数Component
它接收一个对象,该对象默认有三个属性。
properties: 定义本自定义组件的属性的对象
data: 定义本自定义组件的所需数据
methods: 定义本自定义组件所需的函数
Component所接收的对象,能够在任何一个函数中经过this获得。它拥有一个方法triggerEvent方法。它能够触发事件。
第一步:给自定义组件绑定自定义事件
<custom bindclose="close">
<text slot="a">注册表单</text>
<text slot="b">12312321321</text>
</custom>
复制代码
第二步:在页面中对应的JS文件中,定义close函数
第三步:在自定义组件的某个方法内,触发close方法
第四步:当触发hello时,就会向外传递你好,传递的数据在close函数的事件对象的detail上
getLocation
获取当前的位置信息
openLocation
打开一个位置
chooseLocation
选择一个位置
chooseImage
选择图片
uploadFile
上传文件
downLoadFile
下载文件
request
发送请求
etWeRunData
获取运动信息
requestPayment
微信支付
微信提供了API用于获取手机系统的相关信息
wx.getSystemInfoSync()
返回值是一个对象:对象中包含 系统版本、手机型号、窗体宽高等信息。
获取微信中已经设置过的地址列表
wx.chooseAddress({
success: function(res) {
res就是你当前选择的地址的相关信息
}
});
复制代码
这是一个button组件的使用方式:
经过给button组件设置open-type="XXX"来获取对应的信息
demo:
<button open-type="getPhoneNumber" bindgetphonenumber='getphonenumber'>获取电话</button>
复制代码
getphonenumber:是对应的JS文件的事件函数 函数的参数中有一个对象。该对象就是手机号码所在的对象。
我的用户,没法使用。
该组件容许用户执行脚本
属性: module 用于定义模块名称
定义以后,就能够在wxs内部经过module.exports 向外暴露数据
还能够在{{}}中,经过定义的模块名称来调用方法
第一步:设置APPID
第二步:开发
第三步:点击菜单栏中的工具选项 再在下拉菜单中选择上线选项
第四步: 输入版本号 输入项目备注
点击上传,此时就上传到微信服务器。此时能够去开发平台,登陆帐号,进入开发管理,进行相关设置,设置完毕以后。在开发版本中,找到你要上线的项目。点击提交审核。等待审核经过,又会出如今审核经过版本中,点击上线。