日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

隔代獲取dom,多個commit合并成一個,計算屬性完整寫法

作者:小王今天也要加油鴨~! 更新時間: 2022-08-28 編程語言

1. vue父組件獲取子組件中的dom元素(The element or ID supplied is not valid. (videojs))

? 這是在使用video.js時遇到的問題,報錯說元素或id不是支持的格式。我最開始的思路是用父組件獲取子組件中的dom,按理說這在vue里應該很簡單,只需要this. r e f s . 子組件 r e f . refs.子組件ref. refs.子組件ref.refs.dom元素ref。

? 但是我的會報如題中的錯誤,打印子組件,看到子組件里的$refs屬性是空的,應該是組件未掛載,但是當時一直在找哪里錯了也沒找到,就很浪費時間。但是了解了一下videojs的使用方法

定義一個變量,并賦值給它作為播放器

this.videoPlayer = this.$video(this.$refs.xxx / id, {
    //確定播放器是否具有用戶可以與之交互的控件。沒有控件,啟動視頻播放的唯一方法是使用autoplay屬性或通過Player API。
    controls: true,
    //自動播放屬性,muted:靜音播放
    autoplay: false,
    //建議瀏覽器是否應在<video>加載元素后立即開始下載視頻數據。
    preload: "auto",
    //設置視頻播放器的顯示寬度(以像素為單位)
    width: "100%",
    //設置視頻播放器的顯示高度(以像素為單位)
    height: "100%",
    controlBar:{
        playToggle:true
    }
});

關于播放器的一些控制命令,建議銷毀前先重置一下,不然網慢的時候可能會看到上一個的畫面。

this.videoPlayer.reset(); //重置 video
this.videoPlayer.load();//加載
this.videoPlayer.dispose();//銷毀

2. Computed property “isShow” was assigned to but it has no setter.

這個出現的場景是我將isShow放在了computed里作為一個計算屬性,但是我是需要改變它的值的。當時我只寫了 return this.isVideoPlayerShow, 提示我沒有改變這個值,所以需要用完整形式設置個set屬性,用于傳遞父組件,讓父組件改變isVideoPlayerShow的值,就ok了

isShow:{
    get(){
        return this.isVideoPlayerShow
    },
    set(){
        this.$emit('closeVideoPlayer')
    }
}

3. 多個commit合成一個的方法

所有的基礎都是要git log 查看版本號

commit 3 asdda

commit 2 asaaa

commit 1 sa6faf

寫個示意就好了。如果,commit1 是其他人提交的代碼,已合并。而commit 2 和3是我們要提交的 但是不小心提了兩個commit

  1. 簡單方法:git reset --soft sa6faf。這樣,工作臺改動的代碼不會變,但是版本號和暫存區重置回固定版本(軟重置),然后重新走一遍提交流程就好了。

  2. 操作比較多一點的方法:

    • git rebase -i sa6faf
    • 這時候會進入編輯頁面,根據提示最上面的commit不動,其他的把前面的pick 改成s,并入上一個提交,就好了。這時候會讓你重新編輯提交信息,編輯好就ok了。

原文鏈接:https://blog.csdn.net/WANG944282/article/details/126456661

欄目分類
最近更新