前端(vue)入門到精通課程:進(jìn)入學(xué)習(xí)
在一些特殊場景下,使用組件的時(shí)機(jī)無法確定,或者無法在Vue的template中確定要我們要使用的組件,這時(shí)就需要?jiǎng)討B(tài)的掛載組件,或者使用運(yùn)行時(shí)編譯動(dòng)態(tài)創(chuàng)建組件并掛載。
今天我們將帶大家從實(shí)際項(xiàng)目出發(fā),看看在實(shí)際解決客戶問題時(shí),如何將組件進(jìn)行動(dòng)態(tài)掛載,并為大家展示一個(gè)完整的解決動(dòng)態(tài)掛載問題的完整過程。
無法解決的“動(dòng)態(tài)掛載”
我們的電子表格控件SpreadJS在運(yùn)行時(shí),存在這樣一個(gè)功能:當(dāng)用戶雙擊單元格會(huì)顯示一個(gè)輸入框用于編輯單元格的內(nèi)容,用戶可以根據(jù)需求按照自定義單元格類型的規(guī)范自定義輸入框的形式,集成任何Form表單輸入類型。
這個(gè)輸入框的創(chuàng)建銷毀都是通過繼承單元格類型對(duì)應(yīng)方法實(shí)現(xiàn)的,因此這里就存在一個(gè)問題——這個(gè)動(dòng)態(tài)的創(chuàng)建方式并不能簡單在VUE template中配置,然后直接使用?!?/p>