text: import zIndex from '../behaviors/zIndex';
  import watchShow from '../behaviors/watchShow';
  import validator from '../behaviors/validator';
  
  Component({
    behaviors: [zIndex, watchShow, validator],
    externalClasses: ['l-class', 'l-image-class','l-class-image'],
    properties: {
      show: Boolean,
      icon: String,
      iconColor: {
        type: String,
        value: '#fff'
      },
      iconSize: {
        type: String,
        value: '28'
      },
      image: String,
      content: String,
      type: {
        type: String,
        value: 'primary',
        options: ['primary', 'warning', 'success', 'error']
      },
      duration: {
        type: Number,
        value: 1500
      },
      openApi: {
        type: Boolean,
        value: true
      },
      /**
       * message距离顶部的距离
       */
      top: {
        type: Number,
        value: 0
      }
    },
  
    data: {
      status: false
    },
  
    // 解决 addListener undefined 的错误
    observers: {
      'icon': function () {
      }
    },
  
    attached() {
      this.initMessage();
    },
  
    pageLifetimes: {
      show() {
        this.initMessage();
      },
    },
  
    methods: {
      initMessage() {
        wx.lin = wx.lin || {};
        wx.lin.showMessage = (options = {}) => {
          const {
            content = '',
            icon = '',
            image = '',
            type = 'primary',
            duration = 1500,
            success = null,
            top = 0
          } = options;
          this.data.success = success;
          this.setData({
            content,
            icon,
            image,
            duration,
            type,
            top
          });
          this.changeStatus();
          return this;
        };
        wx.lin.hideMessage = () => {
          this.setData({
            status: false
          });
        };
      }
    }
  });
  