成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

跟我學 “Linux” 小程序Web版開發(二):UI開發

開發 前端 Linux
在我們進行這部分開發的時候,接下來我們需要進行相應的功能安排和分類。

 

工作量分析

在我們進行這部分開發的時候,接下來我們需要進行相應的功能安排和分類。

簡單看來,我需要開發 3 個頁面:

  1. 首頁:首頁負責用戶默認訪問。
  2. 列表頁:列表頁面則是在搜索過程中,如果有多個結果,則進入到列表頁面。如果有單個結果,則應該進入到詳情頁面。
  3. 結果頁:結果頁負責顯示命令的具體的翻譯結果。

根據實際的工作拆分組件的化,我需要有一個 Layout 組件來負責整體的頁面的環境渲染。但是,考慮到組件的復用,于是決定將首頁的 Title 進行優化,使首頁和詳情頁保持一致。

在新版的布局情況下,我就可以將頂部的的 title 和底部的 Link 放在最外側的組件中。

創建 Router & Page

在思考情況后,接下來我們來創建 Router 和 Page。首先,刪除 views 下的 About.vue(因為這個頁面我們不需要)。然后創建 List.vueResult.vue ,用作后續的開發準備。

創建完成后,修改 router/index.js 中的 routes 部分:

  1. const routes = [
  2. {
  3. path: '/',
  4. name: 'home',
  5. component: () => import(/* webpackChunkName: "home" */ '../views/Home.vue')
  6. },
  7. {
  8. path: '/list/:cmd',
  9. name: 'list',
  10. component: () => import(/* webpackChunkName: "list" */ '../views/List.vue')
  11. },
  12. {
  13. path: '/cmd/:cmd',
  14. name: 'command',
  15. component: () => import(/* webpackChunkName: "cmd" */ '../views/Result.vue')
  16. }
  17. ]

完成定義后,我們就可以通過形如 https://tldr.linux.cn/list/ls  和 https://tldr.linux.cn/cmd/ls  這樣的方式來訪問具體的命令了。

定義頁面

接下來需要編寫 Home、List 和 Result 這三個頁面。由于這三個頁面在內容方面沒有太多的可以借鑒的點,所以我們更多關注于使用頁面中 <script> 的部分。

  1. <template>
  2. <div class="home">
  3. <v-text-field
  4. v-model="cmd"
  5. @keydown="onKeyDown"
  6. autofocus
  7. ></v-text-field>
  8. </div>
  9. </template>
  10.  
  11. <script>
  12. export default {
  13. name: 'home',
  14. data:function(){
  15. return {
  16. cmd:""
  17. }
  18. },
  19. methods:{
  20. onKeyDown: function(e) {
  21. }
  22. },
  23. computed:{
  24. isLoaded:function(){
  25. return !this.loaded
  26. }
  27. }
  28. }
  29. </script>

上述代碼是我在三個頁面幾乎都會使用到的結構,刪除其中的一些無用的代碼以后,基本上在每個頁面都可以看到。這里我重點說一下其中的一些比較特殊的用法。

首先第一個是在 v-text-field 上加入的 @keydown="onKeyDown" 這個綁定,這個綁定將會幫助實現用戶點擊回車以后,自動觸發事件。這樣在用戶輸入完命令后,按下回車就自動執行后續的操作,而不需要再移動鼠標指針去點擊按鈕啟動搜索。

其次,在 v-text-field 上加入了autofocus ,來實現進入頁面后,自動為輸入框加入focus,從而實現頁面加載完成后,用戶就可以輸入命令。

這樣的一些配置,可以讓用戶的體驗做到最好

除此之外,我還用到了 computed ,來做數據調整,確保我可以控制內容。

一些小的特性的點

使用骨架圖來優化體驗

由于我們的應用在列表頁面和詳情頁面存在數據的查詢時間,為了讓應用在加載的時候,不會因為加載中而退出頁面,我加入了 v-skeleton-loader 組件,這樣用戶在數據查詢的時候,看骨架圖來緩解用戶的焦慮。

[[313850]]

在組件層面,我配置了 v-if 來做顯示的控制,并將 type 設置為 card,article,card,article 來實現多樣化的組件加載支持。

  1. <v-skeleton-loader
  2. v-if="isLoaded"
  3. type="card,article,card,article"
  4. min-height="800"
  5. ></v-skeleton-loader>

總結

在這一部分中,借助 Vue 的 methodonkeydowncomputed 實現了頁面基本邏輯的構建。并借助 Vuetify 的一些基礎組件來構建頁面。

在這一部分,我想告訴大家的更多是在 UI 的部分,我們在做的時候不僅僅需要考慮的是界面,更多還需要考慮在 UX 側體驗的優化,組件庫提供給我們的配置項目,可以優化產品體驗。

 

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2020-02-03 14:45:50

LinuxWeb前端

2020-02-05 09:20:37

LinuxWeb前端

2020-02-06 16:23:00

LinuxWeb前端

2022-02-16 09:42:33

Linuxapt命令軟件包

2021-03-22 09:10:28

NginxNginx 簡介服務器

2010-05-18 10:46:46

2023-03-31 11:14:13

java虛擬機指令

2023-08-10 08:01:21

2018-06-08 15:28:31

Android開發程序

2018-09-18 23:29:43

小程序云服務

2023-06-21 08:05:39

開源UI庫互聯網

2017-04-26 14:48:01

Chrome程序擴展

2020-11-26 11:25:44

VimLinuxPython IDE

2014-12-03 13:26:24

JavaScript

2017-05-08 15:03:07

微信小程序開發實戰

2009-10-21 12:45:07

linux程序開發基礎入門

2019-03-28 18:08:20

Linux命令小程序

2009-06-01 09:59:57

LinuxChrome開發

2009-06-02 15:58:34

LinuxChrome開發

2014-02-11 13:49:00

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩精品一区二区三区中文字幕 | 成人免费日韩 | 91久久精品一区二区二区 | 人人人人人爽 | 国产精品视频免费观看 | 中文字幕亚洲专区 | 日韩一区二区久久 | 中文字幕亚洲精品 | 国产精品视频一区二区三区四区国 | 欧美一级www片免费观看 | 最新中文字幕在线 | 天天射美女 | 亚洲欧美日韩精品久久亚洲区 | 欧美综合在线观看 | 免费人成激情视频在线观看冫 | 特级黄一级播放 | 日韩在线小视频 | 久久大全 | 91精品国产综合久久精品图片 | 日韩精品免费视频 | www国产精 | 久久久免费电影 | 欧美电影在线观看网站 | 日韩一区二区av | 最新91在线| a网站在线观看 | 国产精品久久久99 | 日韩欧美在线视频 | 国产精品久久精品 | 中文字幕一级毛片视频 | 久久久久久免费精品一区二区三区 | 亚洲精品久久久久中文字幕二区 | av片在线观看 | 在线国产小视频 | 免费久久精品 | 成人精品鲁一区一区二区 | 男女羞羞视频在线 | 黑人巨大精品欧美黑白配亚洲 | 亚洲国产黄 | 久久久性 | 亚洲高清在线 |