通過示例講解Remix?設計哲學理念
Remix 中的豐富經(jīng)驗
Remix 版本: v1.14.1
Remix philosophy 閱讀過程中感受最深的一個詞 經(jīng)驗豐富,使用一個 map 數(shù)據(jù)結(jié)構(gòu)來表示:
let remixPhilosophy = Map({ 1: '開發(fā)經(jīng)驗豐富', 2: '培訓經(jīng)驗豐富', 3:'開源經(jīng)驗豐富' })
遵循 web 客觀發(fā)展
客觀發(fā)展點用一個 map 數(shù)據(jù)結(jié)構(gòu)表示:
let rich_experience = Map({ 1: '遵循 S/C 模型', 2: '遵循 Web 標準', 3: '遵循漸進式增強', 4: '不過渡抽象', })
遵循 S/C 模型
Remix 將前端統(tǒng)一到一個 Route Module 里面,但是依然遵循 S/C 模型:
- loader 前端端數(shù)據(jù)描述:
let sc_remix_router = { fe: 'useLoaderData_hook', be: 'export_loader_async_fn' }
- action 前后端數(shù)據(jù)描述:
let sc_remix_router = { fe: 'useActionData_hook', be: 'export_action_async_fn' }
遵循 Web 標準
遵循 web 標準發(fā)展描述:
let web = { 'support': ['web_standard', 'http', 'html'], 'examples': ['fetch_api', 'link_tag', 'meta_tag', 'form'] }
漸進式
在原有的 html 基礎上,做 css/javascript/from/異步數(shù)據(jù)等功能增強
let enhance = { can_no_css_or_javascript: true, can_on_layout_data: true, can_no_loading: true, data_CRUD: true }
不做過度抽象
remix 由于有教育經(jīng)驗,對過度的抽象是敏感的,很明顯是過度抽象不利于初學者。例如引入 css 依然使用 link 來引入,不同的是:從 link 標簽,變成輸出一個 link 函數(shù)。
let define_link_example = { html: 'link_tag', remix: 'export_link_fn' }
小結(jié)
remix 由于多年的開發(fā)和培訓以及開源經(jīng)驗,開發(fā)一套遵循 Web 標準和 S/C 模型的漸進式的全??蚣?。Remix 的路由模塊結(jié)構(gòu)簡單清晰,能方便快捷的完成 web 開發(fā)任務。
以上就是通過示例講解Remix 設計哲學理念的詳細內(nèi)容,更多關(guān)于Remix 設計哲學理念的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
react+ts實現(xiàn)簡單jira項目的最佳實踐記錄
這篇文章主要介紹了react+ts實現(xiàn)簡單jira項目,本文通過圖文實例相結(jié)合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-07-07關(guān)于useEffect執(zhí)行兩次的問題及解決
這篇文章主要介紹了關(guān)于useEffect執(zhí)行兩次的問題及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-09-09react如何使用mobx6動態(tài)加載數(shù)據(jù)
MobX是一個強大而簡單的狀態(tài)管理工具,它可以幫助我們更好地組織和管理React應用程序中的數(shù)據(jù)流,本文給大家介紹react如何使用mobx6動態(tài)加載數(shù)據(jù),感興趣的朋友跟隨小編一起看看吧2024-02-02React之錯誤邊界 Error Boundaries示例詳解
這篇文章主要為大家介紹了React之錯誤邊界Error Boundaries示例教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-10-10