快手短视频广告投放-快手小程序(指南)03

一、快手推广-使用内置组件


快手小程序框架提供了一些内置组件帮助开发者快速开发小程序。内置组件的使用上有一些限制

二、关于属性和控制


ksml文件中小程序组件的数据来源一般是通过属性(attribute)传入,在使用中通过模版绑定和setData修改这些属性,可以直接控制组件内部的值。对于部分组件,例如表单组件,使用的数据源除了传入的属性之外同时还会受其他一些交互控制(例如键盘输入、点击操作等),这时候属性的设置可能会失效。

例如,以下需要使用清空input输入框的场景。期望结果是输入框输入内容之后,点击清空按钮之后把内容设置成空字符串达到清空的效果。但实际上由于input的属性接收到的value并未发生改变(value自始至终都是空字符串),所以这次setData并不能有效传递到input中,视图不会改变。


<input value={{value}} />

<button bindtap="clearValue">清空输入框</button>

-------------------------------------------------------------------------

Page({

   data: {
       value: '',
   },
   clearValue(){
       this.setData({
           value: '',
       });
   },})

对于这种情况,需要开发者修改一下实现。在input改变后将数据同步到外部组件中更新对应的属性。

<input value={{value}} bindchange="syncValue" />

<button bindtap="clearValue">清空输入框</button>

-------------------------------------------------------------------------

Page({
   data: {
       value: '',
   },
   syncValue(e){
       this.setData({
           value: e.detail.value,
       });
   },
   clearValue(){
       this.setData({
           value: '',
       });
   },})


快手短视频广告投放-快手小程序(指南)03


三、关于原生组件


1.为了保证小程序的性能和交互效果,部分组件使用原生组件实现,使用客户端渲染,如下:

  • video

  • input

  • textarea

  • canvas

  • cover-view

  • cover-image


2.原生组件使用上会有一些限制:

  • 原生组件的层级是最高的,表现为原生组件无法被其他web组件覆盖。如果需要覆盖,可以使用cover-view、cover-image嵌套实现。

  • 部分样式无法在原生组件上生效

  • 原生组件在自定义的滚动元素中展示有可能不符预期。原生组件尽量跟随页面滚动,不要放在其他滚动元素中。


文章均来自互联网如有不妥请联系作者删除QQ:314111741 地址:http://www.mqs.net/post/8872.html

相关阅读

添加新评论