誰能詳細解釋下什麼是單頁面?

都說是把多個頁面寫一個頁面里 百度百科裡推薦的經典例子是網易郵箱登錄 但F12查源碼 網易郵箱也沒有把多個頁面寫在一個頁面里啊 還是多個頁面 那怎麼叫單頁面?


謝邀。

單頁面是指只有一個主頁面的應用,瀏覽器一開始要載入所有必須的 html, js, css。所有的頁面內容都包含在這個所謂的主頁面中。但在寫的時候,還是會分開寫(頁面片段),然後在交互的時候由路由程序動態載入。

舉個 Angular 的栗子,下面是主頁面:

&
&
&
& &

&
&
&& & &

相比之下,傳統的多頁面應用每個頁面(只說動態頁面)都是使用伺服器端模板編寫,然後請求這個頁面的時候由伺服器渲染成 html 再返回。

兩者對比,一個很明顯的區別就是,多頁面應用的 server 端要干兩件事:提供數據+渲染,而單頁面應用把渲染拿到瀏覽器端做了,伺服器只提供數據就可以了。

可以去找一個 Angular/Vue/React 之類的單頁面 demo 看看,更易理解。


謝邀。

頁面一般是指的html文件。

單頁面就是說只有一個html文件,操作過程中不進行頁面跳轉,而是更改html的內容。

網易郵箱沒看過,不做解釋了。


前面答案:你在飯店點了十道菜,全給你裝一個盤子里了,這就是單頁面應用。

感覺不太恰當,應該是:你在飯店點了十道菜,依次裝到一個盤子里。你吃的時候盤子里只有一道菜,這道吃完了,下道菜上來,依次類推。


多頁面應用相當於你去飯店吃飯,點什麼菜,廚師到廚房煮,服務員才能端到桌上讓你吃。

單頁面應用相當於你去吃自助餐,吃的大多都弄好放出來,不用等廚房煮,想吃什麼直接拿來吃就好了。


F12,Network,當url改變時看資源是否被刷新了一遍


了解了


你在飯店點了十道菜,全給你裝一個盤子里了,這就是單頁面應用


推薦閱讀:

CSS中margin-top/bottom(padding-top/bottom)百分比為何以最近的塊級祖先元素的寬度而不是高度作計算?
國內有哪些不需要兼容低版本ie的前端團隊?
前端上傳文件實時顯示進度條和上傳速度的工作原理是怎樣的?
如何評價 angular 2 中的 AoT?

TAG:前端開發 | JavaScript | CSS布局 | 單頁 |