公司最近要搞活动,需要做两个活动的官网用于宣称。在活动准备伊始,公司找了外包团队来做这件事,但是最后交付之后效果不满意,所以紧急找内部开发和设计想要重新开发。

呃,没错,我就是那个开发。以下是一些经验总结,非技术居多,希望能够帮助到大家。

网站使用的技术栈是:nextjs + tailwindcss + vercel。以下是整个过程中面对的问题。

技术

最快的方式部署

nextjs + vercel 部署很方便,完全不用额外的时间去设计 CI / CD,这可以节省大量的时间,因为前端写 github action 诸如此类的配置文件,不小心就会跳进坑。如何快速部署是我们需要第一考量的。

响应式

需要从一开始就想好如何做移动端和 PC 端的兼容。用 tailwindcss 做出一套响应式的网站还是比较容易的,只要理解好 tailwindcss 里的断点使用就可以了。

处理好图片

我个人觉得图片是很难处理的一部分。无论是要求不同屏幕上的正常显示,还是响应速度,图片都很麻烦。

先把 png /jpg/svg 的区别与使用场景分清楚,特别是清晰度的问题。了解 picture、img、srcset、object-fit 这些概念之后,就能够很好的帮助到我们快速解决图片的问题。

实在不行,就用上 JS 大法。

中英文排版

页面的布局是一种排版,主要取决于设计师的考量。

中英文的呈现也是一种排版,好的排版会让页面显得高级,排版规则请参考: 中文文案排版指北

国际化

从一开始就要问清楚当下或者以后有没有做多语言的需求。现在很多库都能帮助开发方便的添加多语言,不会花费太多时间。但如果做到中途发现需要实现多语言,可能 Ctrl + C 和 Ctrl + V 就会被按烂。

关注过渡

好的交互细节能够极大的提升用户访问的体验,例如交互按钮的 hover 效果,页面的滚动效果,或者更复杂的效果。

注意 UI 细节之外的东西

作为活动,必定会在一些社交媒体分发,怎么保证在设计媒体最优显示,是非常值得注意的问题。例如,在 twitter 分享的时候,有一个加 twttier card 的东西,可以帮助别人浏览推文的时候,预览网页内容。为此,需要在网站的 head 里设置添加一些 meta 信息。

当然,最基本的,把一些基本的 SEO 问题处理一些,例如设置 title 等 meta,以及一些语义化标签。

无障碍访问和键盘导航

没什么好说的,我也不是很懂,学习中。

非技术

不需要的设计整理

例如,我们要做一个人物介绍的列表,大概有 100 个人,每个人最近基本的信息有:名字、介绍

图片。我们可能写了一个组件,我们只要把数据整理成数组,map /foreach 就可以。

我们绝大部分时间都是花在整理数据,其实完全可以交给运营或者设计来做,因为整理这些数据本来就是需要做的,ta 们完全可以顺手整理一份你想要的数据。当然,你或许想要一份 json 数据,但是运营 / 设计很难理解或者编辑这种数据结构。你可以用 ta 们熟悉的文本编辑方式,最后自己写个脚本做 format。

直接和运营沟通

在某种情况下或者项目前期的时候,可能不太会和运营产生直接的接触(都不一定)。个人感觉越早越好。

这种沟通是双向的,可以尽早的把网站部署在不重要的域名上,给相关人员预览,方便早期得到反馈。

售后服务

即使这个网站需要快速上线、即使这个网站可能只用几天,也不要在开发的时候偷懒,至少不要偷懒太多。尽量减少冗余的代码,尽量设计组件,虽然可能看起来很简单。

因为上线之后,运营人员根据一些内部或者外部的反馈,对网站进行调整,这些调整可能包含某些细微的设计更改,或者是推翻整个一大部分设计。如果此前偷懒了,就代表面对这些更改,你需要霰弹式更改,非常恶心。

编写你觉得正确的代码风格的代码,即使可能花费一些时间。

最后,祝大家切图愉快。