第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

【金秋打卡】第19天 彈層組件關(guān)閉處理

標(biāo)簽:
Typescript

课程章节: 第4章 Popup弹层组件开发 4-5

主讲老师:西门老舅

课程内容:

今天学习的内容是 Popup 弹层组件的交互(关闭)及弹层容器回调实现。

关闭弹层

给关闭图标添加事件监听,点击关闭图标后销毁弹层组件和遮罩层。

需要注意 this 指向的问题,事件的处理函数使用箭头函数,这样函数中的 this 就指向了当前所在的上下文,也就是 Popup 组件实例。

handle() {
    let popupCloseElm = this.tempContainer.querySelector('.icon-close')
    popupCloseElm?.addEventListener('click', () => {
      // 移除弹层组件
      document.body.removeChild(this.tempContainer)

      // 移除遮罩层
      this.options.mask && document.body.removeChild(this.maskElm)
    })
}

然后在初始化方法中调用 handle :

init() {
    this.template()
    this.options.mask && this.createMask()
    this.handle()
}

content 回调函数

当唤起弹层组件后,还要通过执行 content 指定的回调函数,决定渲染什么内容

创建一个 createContent 方法:

contentCallback() {
    let contentElm = this.tempContainer.querySelector('.content') as HTMLElement
    this.options.content && this.options.content(contentElm)
}

然后在初始化方法中调用 contentCallback:

init() {
    // ......
    
    this.createContent()
}

课程收获

到这里就完成了整个弹层组件的开发,其实现流程是:

  1. 通过接口定义组件结构和组件构造参数的类型
  2. 定义组件的模板和模板
  3. 实现遮罩层
  4. 完成交互逻辑和展示内容

后面实现视频播放器组件后,渲染到弹层组件中进行展示。

图片描述

點擊查看更多內(nèi)容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評論
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊有機(jī)會得

100積分直接送

付費專欄免費學(xué)

大額優(yōu)惠券免費領(lǐng)

立即參與 放棄機(jī)會
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消