在前端開發過程中,很多時候需要加載一些靜態的數據,比如字典表,這些數據不宜直接硬編碼在代碼中,因此需要一種可靠、易用的方式來加載這些數據。在Vue框架中, 通過ajax請求或者直接引入.js文件的方式,來實現字典表的加載。
首先,我們可以通過ajax請求方式來加載字典表,在Vue框架中,可以使用vue-resource、axios或者原生的XMLHttpRequest技術進行異步請求。
Vue.http.get('/api/dict').then(response =>{ //字典表數據處理 }, response =>{ //錯誤處理 })
另外一種方式是使用原生的XMLHttpRequest對象來進行請求。這種方式對于一些輕量級的場景非常的合適,也是Vue框架內部封裝的機制。
let xhr = new XMLHttpRequest() xhr.open('GET', '/api/dict', true) xhr.onreadystatechange = function () { if (xhr.readyState === 4 && xhr.status === 200) { let data = JSON.parse(xhr.response) //字典表數據處理 } } xhr.send(null)
除了通過ajax請求外,我們還可以直接在Vue組件內引入字典表.js文件,這種方式相對傳統的HTML+JavaScript的方式更加合理,如果你使用Webpack或其他打包工具打包,你可以使用require或者import語法來引入字典表文件。
import dict from './dict.js' export default { data () { return { dictData: dict } } }
在Vue組件內定義好字典表之后,我們可以根據業務需要來使用Vue的計算屬性或者過濾器來獲取該字典表數據,并進行展示或者數據處理。
computed: { dict () { return this.dictData.filter(d =>d.code === this.status)[0].name } }
在Vue框架中,字典表的加載和使用比較簡單,但是我們需要注意有兩點。第一,在字典表數據處理的時候,我們最好對數據進行一定的整理和篩選,過多的數據會影響應用的性能。第二,字典表數據往往是靜態的,不需要實時的去獲取,如果數據量較大,最好在頁面初始化時,將其緩存至本地,從而提高應用的加載速度。
上一篇eclipse轉json
下一篇vue加載靜態頁面