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