2 回答

TA貢獻(xiàn)55條經(jīng)驗(yàn) 獲得超117個贊
最直接的區(qū)別,很容易注意到,一個是file協(xié)議,另一個是http協(xié)議。file協(xié)議更多的是將該請求視為一個本地資源訪問請求,和你使用資源管理器打開是一樣的,是純粹的請求本地文件。而http請求方式則是通過假架設(shè)一個web服務(wù)器,解析http協(xié)議的請求然后向?yàn)g覽器返回資源信息。我們所開發(fā)的html文件最后必定是會以網(wǎng)頁的形式部署在服務(wù)器上,通過http協(xié)議訪問,所以我們開發(fā)中也盡可能模擬線上環(huán)境,架設(shè)本地服務(wù)器,來避免file協(xié)議與http協(xié)議實(shí)現(xiàn)過程中的某些差異性,如某些API的差異、跨域請求的差異等。舉個最容易驗(yàn)證的例子:在頁面引入一張絕對路徑的圖片,即'/image/example.png',然后分別通過這兩種方式打開頁面,file協(xié)議會將資源請求到根路徑,而http協(xié)議雖然也會請求到根路徑,但是是相對本地架設(shè)的服務(wù)器的根路徑,一般也就是項(xiàng)目文件夾的路徑。

TA貢獻(xiàn)12條經(jīng)驗(yàn) 獲得超15個贊
盡量簡單解釋,希望能看懂:
是否需要用本地服務(wù)器打開 html 分幾種情況:
html 中是否是純靜態(tài)模板頁
純靜態(tài)模板頁指頁面內(nèi)沒有“請求服務(wù)器”獲取數(shù)據(jù),展示的是為了布局占位臨時寫的“假”數(shù)據(jù)。比如,“姓名”、“年齡”,后端數(shù)據(jù)還沒完成,前端先寫模板頁,隨便寫“姓名: 張三”、“年齡:18”,先把頁面布局和樣式完成。這個階段不需要開啟本地服務(wù)器
html?中引用的靜態(tài)資源是否需要構(gòu)建工具打包編譯
比如 js 使用了 ES6 新特性、css 使用了 less 編寫等,這時可能需要使用 Webpack 等工具進(jìn)行編譯。這時,一般需要啟動一個本地 node.js 服務(wù)去執(zhí)行編譯和預(yù)覽
?開發(fā)中是否用到“實(shí)時刷新,同步預(yù)覽”
如果開發(fā)中修改文件不想每次都點(diǎn)擊刷新或按 F5,保存時自動刷新,可以借助一些工具,比如?livereload、browserSync 等。用這些工具,需要啟動一個本地服務(wù)
開發(fā)中是否用到多終端調(diào)試
如果開發(fā)的靜態(tài)頁面想在某品牌手機(jī)真機(jī)上看顯示效果,調(diào)試兼容性問題,除了最笨的把頁面和靜態(tài)資源發(fā)送到手機(jī)上,還以可以起一個本地服務(wù),電腦與手機(jī)連接到同一 Wifi 下,用手機(jī)訪問本地服務(wù) loalhost 對應(yīng)的內(nèi)網(wǎng) ip 地址即可
添加回答
舉報