跟我学“Linux”小程序 Web 版开发(二):UI 开发(微信小程序开发 linux)

跟我学“Linux”小程序 Web 版开发(二):UI 开发(微信小程序开发 linux)

在这一部分中,借助 Vue 的 method 、onkeydown 和 computed 实现了页面基本逻辑的构建。并借助 Vuetify 的一些基础组件来构建页面。

工作量分析

在我们进行这部分开发的时候,接下来我们需要进行相应的功能安排和分类。

跟我学“Linux”小程序 Web 版开发(二):UI 开发(微信小程序开发 linux)

简单看来,我需要开发 3 个页面:

  1. 首页:首页负责用户默认访问。
  2. 列表页:列表页面则是在搜索过程中,如果有多个结果,则进入到列表页面。如果有单个结果,则应该进入到详情页面。
  3. 结果页:结果页负责显示命令的具体的翻译结果。

根据实际的工作拆分组件的化,我需要有一个 Layout 组件来负责整体的页面的环境渲染。但是,考虑到组件的复用,于是决定将首页的 Title 进行优化,使首页和详情页保持一致。

跟我学“Linux”小程序 Web 版开发(二):UI 开发(微信小程序开发 linux)

在新版的布局情况下,我就可以将顶部的的 title 和底部的 Link 放在最外侧的组件中。

创建 Router & Page

在思考情况后,接下来我们来创建 Router 和 Page。首先,删除 views 下的 About.vue(因为这个页面我们不需要)。然后创建 List.vue 和 Result.vue ,用作后续的开发准备。

跟我学“Linux”小程序 Web 版开发(二):UI 开发(微信小程序开发 linux)

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

const routes = [  {    path: '/',    name: 'home',    component: () => import(/* webpackChunkName: "home" */ '../views/Home.vue')  },  {    path: '/list/:cmd',    name: 'list',    component: () => import(/* webpackChunkName: "list" */ '../views/List.vue')  },  {    path: '/cmd/:cmd',    name: 'command',    component: () => import(/* webpackChunkName: "cmd" */ '../views/Result.vue')  }]

完成定义后,我们就可以通过形如 https://tldr.linux.cn/list/ls 和 https://tldr.linux.cn/cmd/ls 这样的方式来访问具体的命令了。

定义页面

接下来需要编写 Home、List 和 Result 这三个页面。由于这三个页面在内容方面没有太多的可以借鉴的点,所以我们更多关注于使用页面中 <script> 的部分。

<template>  <div class="home">        <v-text-field        v-model="cmd"        @keydown="onKeyDown"        autofocus        ></v-text-field>          </div></template><script>export default {  name: 'home',  data:function(){    return {      cmd:""    }  },  methods:{    onKeyDown: function(e)  {         }  },  computed:{    isLoaded:function(){        return !this.loaded    }  }}</script>

上述代码是我在三个页面几乎都会使用到的结构,删除其中的一些无用的代码以后,基本上在每个页面都可以看到。这里我重点说一下其中的一些比较特殊的用法。

首先第一个是在 v-text-field 上加入的 @keydown="onKeyDown" 这个绑定,这个绑定将会帮助实现用户点击回车以后,自动触发事件。这样在用户输入完命令后,按下回车就自动执行后续的操作,而不需要再移动鼠标指针去点击按钮启动搜索。

其次,在 v-text-field 上加入了autofocus ,来实现进入页面后,自动为输入框加入focus,从而实现页面加载完成后,用户就可以输入命令。

这样的一些配置,可以让用户的体验做到最好

除此之外,我还用到了 computed ,来做数据调整,确保我可以控制内容。

一些小的特性的点

使用骨架图来优化体验

由于我们的应用在列表页面和详情页面存在数据的查询时间,为了让应用在加载的时候,不会因为加载中而退出页面,我加入了 v-skeleton-loader 组件,这样用户在数据查询的时候,看骨架图来缓解用户的焦虑。

跟我学“Linux”小程序 Web 版开发(二):UI 开发(微信小程序开发 linux)

在组件层面,我配置了 v-if 来做显示的控制,并将 type 设置为 card,article,card,article 来实现多样化的组件加载支持。

<v-skeleton-loader    v-if="isLoaded"    type="card,article,card,article"    min-height="800"    ></v-skeleton-loader>

总结

在这一部分中,借助 Vue 的 method 、onkeydown 和 computed 实现了页面基本逻辑的构建。并借助 Vuetify 的一些基础组件来构建页面。

在这一部分,我想告诉大家的更多是在 UI 的部分,我们在做的时候不仅仅需要考虑的是界面,更多还需要考虑在 UX 侧体验的优化,组件库提供给我们的配置项目,可以优化产品体验。

点击“了解更多”可访问文内链接

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2024年5月21日 下午3:44
下一篇 2024年5月21日 下午3:56

相关推荐

  • 科研课题结题流程

    科研课题结题流程 随着信息技术的不断发展,科研课题结题流程也在不断变化。下面,我们介绍一种常用的科研课题结题流程。 1. 课题申请 课题申请是指在课题开始研究之前,向课题负责人或课…

    科研百科 2024年10月9日
    13
  • 龙岩市永定区教育局徐灿辉

    龙岩市永定区教育局徐灿辉龙岩市永定区教育局徐灿辉(1)在教育、教学、管理等方面的问题学生首先要意识到,不论在学校里还是居家学习时,都应该有学习、工作、生活等方面的要求。此外,有的同…

    科研百科 2024年12月1日
    0
  • 张家界基层党建工作优秀实践创新案例:张家界崇实小学北校党总支“四个聚焦”开展课程思政教育教学改革

    编者按:2022年是张家界市委确定的基层党建工作创新年,全市各基层党组织按照创新年活动方案和创新项目评选方案要求,主动思考、探索创新、积极实践,激发了基层党组织的活力,形成了创新争…

    科研百科 2023年3月1日
    231
  • 抓好基层党建的重要性和意义(抓好基层党建的重要性和意义心得体会)

    党建是党抓好各项工作的根本。党建工作抓好了,基层党组织的核心作用就能更好发挥,队伍的凝聚力和向心力就更加明显,党的各项工作任务都会得到更长久更完善的发展。我们一定要充分认识新形势下…

    科研百科 2023年6月2日
    330
  • 《海外项目管理》

    海外项目管理 随着全球化的不断推进,越来越多的企业开始将业务扩展到海外,这对企业的项目管理提出了更高的要求。海外项目管理不仅仅是在国内项目管理的基础上进行扩展,还需要考虑到当地的文…

    科研百科 2024年7月21日
    60
  • 广西大化大力推动低碳生态畜牧业发展

       近日,在大化瑶族自治县共和乡颁桃村龙荣屯成富生态养殖场内,挖掘机正在忙碌作业,该县最大的厌氧消化400立方米沼气池和储液池破土动工。建成沼气池产生的沼肥将通过抽泵、…

    科研百科 2022年5月24日
    347
  • 低代码医疗:实现快速应用开发与业务创新(低代码是什么)

    随着科技的不断发展,数字化已经成为各个领域的必然趋势。同样,在医疗领域,数字化转型也已经成为必要性。 早在新冠疫情之前很多国家和地区就已经开始尝试医疗数字化的转型。有很多人认为,医…

    科研百科 2024年5月16日
    113
  • 2022 年 7 大开源项目管理软件(开源项目管理软件排名)

    想要实现团队发展,还想使用专用工具增强项目生产力?或者,您是想使用成本更低、更有效的选项来替换当前的项目管理软件?以下是 Capterra 评选出的 2022 年受用户欢迎的 7 …

    科研百科 2023年11月18日
    164
  • LSI msm

    LSI msm: 数字信号处理中的基础知识 数字信号处理(LSI)是计算机视觉和机器学习领域中非常重要的一个分支,它涉及到信号的数字化、处理、分析和优化。在LSI中,信号的数字化是…

    科研百科 2024年11月14日
    0
  • 统计学可以搞科研吗

    统计学可以搞科研吗? 随着现代科学的发展,统计学已经成为了一种非常重要的科学工具。在科学研究中,统计学被广泛应用于数据分析、假设检验、统计推断等方面。因此,对于许多科学家而言,掌握…

    科研百科 2024年10月30日
    0