我的网站开发技术经验总结 我的网站开发技术经验总结
首页

fangdown

我的网站开发技术经验总结
首页
  • 认识ESM
  • chrome-talend插件,类似postman
  • sequelize 使用及技巧
  • UML工具Power Designer建表
  • sequelize相关操作文档
  • 解决抖音获取签名及并发的问题
  • 记一次解决抖音分享页混淆字体,字体图标转UID解决方案
  • 获取抖音用户作品列表信息
  • 获取抖音用户作品列表信息-进阶
  • 获取抖音用户作品列表信息-进阶3
  • 如何根据抖音号获取用户信息
  • 获取用户最新视频
  • 模块化-import和require的区别
  • eslint规范
  • js容错处理
  • js-数组分组,执行promise
  • reduce使用遇到的问题
  • 正则匹配html的元素内容
  • taro 小程序 弹窗层禁止底部滚动
  • 公众号签名问题
  • CentOS7中MariaDB重置密码
  • nginx多域名配置
  • node访问接口,得到乱码的结果,原因-Accept-Encoding
  • node写文件到json中
  • node抓取html内容
  • Node.js使用ES6语法
  • express 使用cors中间件解决跨域
  • node + express + session + redis 进行持久化缓存
  • node中读取文件夹,获取文件名称
  • pm2常用命令
  • 使用pm2管理后台node服务
  • typescript puppeteer支持window及document属性
  • node读取json文件
  • node中使用redis缓存
  • node + github的webhook完成自动部署
  • vuepress-blog的性能优化-CDN
  • CENTOS7下安装REDIS
  • promise then和catch的学习和使用
  • promise在循环中的串行并行用法
  • puppeteer常用知识
  • centos部署安装puppeteer
  • python的学习和使用
  • Taro+TypeScript - Mobx实践
  • 爬虫系列 --- 反爬机制和破解方法汇总
  • 安全-html转码
  • taro中使用animation动画
  • charles 使用
  • Mac下VSCode设置iTerm2终端样式
  • centos一步步完成站点部署
  • 云闪付做地铁的思路
  • 准备技能
  • 备案pc项目介绍
  • 备案小程序项目介绍
  • 小程序二维码扫码功能
  • 小程序域名组件开发
    • 小程序域名组件开发
    • 目的
    • 实施
      • 结构
      • index.json
      • index.ts
      • index.wxml
    • 调用
    • 总结
  • 小程序添加水印
  • 规则引擎优化
  • 记一次hooks代替redux的经历
  • 通过nodejs+koa+stream进行服务端图片代理
  • nodeJs接入log4j日志
  • nodejs+typescript项目中添加全局global属性
  • create-react-app 安装 bizcharts 项目崩溃
  • 使用MutationObserver监控dom的变化
  • 服务器重启后启动相关服务
  • moment国际化的问题
  • 项目经验
fangdown
2021-09-08
目录

小程序域名组件开发

# 小程序域名组件开发

# 目的

  • 域名公共组件

# 实施

# 结构

生成domain目录, 包含4个文件

  • domain
    • index.ts
    • index.json
    • index.wxml
    • index.wxss

# index.json

 {
  "component": true,
  "usingComponents": {
    "field": "/components/field/field",
  }
}

# index.ts

Component({
  behaviors: ['wx://form-field'],
  properties: {
    // 必须要有value,作为组件的值
    value: {
      type: Array,
      value: [],
      observer() {
        this.getRenderList();
      }
    },
    disabled: {
      type: Boolean,
      value: true
    },
    error: {
      type: Array,
      value: []
    }
  },
  data: {
    renderList: []
  },
  attached() {
    this.getRenderList();
  },
  methods: {
    // 计算渲染列表
    getRenderList() {
      const { value } = this.data;
      this.setData({ renderList: value });
    },
    /**
     * 删除操作
     */
    handleDelete(e) {
      const targetIdx = e.currentTarget.dataset.index;
      const { renderList } = this.data;
      const newRenderList = renderList.filter((val, idx) => idx !== targetIdx);
      this.setData({
        renderList: newRenderList
      });
      this.clearError(targetIdx);
      this.triggerEvent('customevent', { list: newRenderList });
    }
  }
});

# index.wxml

<view class="weui-cells">
  <view
    class="wrapper"
    wx:for="{{ renderList }}"
    wx:key="{{ index }}">
    <view
      class="weui-cell user-defined_input_select_columns {{ disabled ? 'weui-cell_disabled' : '' }}">
      <view
        class="weui-cell__op  {{ disabled ? 'hidden' :'' }}">
        <button
          wx:if="{{ !disabled  }}"
          class='delete-btn'
          bindtap="handleDelete"
          data-index="{{ index }}"
        >
          <icon class="icon-delete"></icon>
        </button>
      </view>
      <view class="weui-cell__hd da-url-lable">
        <view class="weui-label">网站域名</view>
      </view>
      <view class="weui-cell__bd">
        <input placeholder-class="placeholder" 
          class="weui-input" 
          value="{{ item }}" 
          disabled="true" 
          data-index="{{ index }}"
        />
      </view>
    </view>
  </view>
</view>

# 调用

<domain
  name="domains"
  id="domains"
  value="{{ domains }}"
  error="{{ domainsError }}"
  disabled="{{ domainsDisabled }}"
  bindcustomevent="changeDomains"
/>

# 总结

  • 组件必须要设置value参数供外部读取值
  • bindcustomevent 回调函数进行修改同步value值,单向数据流
#小程序
上次更新: 2021/12/19, 18:05:42
小程序二维码扫码功能
小程序添加水印

← 小程序二维码扫码功能 小程序添加水印→

最近更新
01
多分支修复撞车的问题
05-01
02
如何成为架构师
01-23
03
服务器部署全过程
11-23
更多文章>
Theme by Vdoing | Copyright © 2019-2026 fangdown | 粤ICP备19079809号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式