【Nuxt】Nuxt做官网要求适配PC&Mobile,我的解决方案

简介: 前言项目终于进入了尾声,这段时间主要在忙公司官网的开发,前段时间我在忙另外一个项目的时候,官网这个项目就启动了,团队里的另外一个小伙伴居然用Vue-cli构建了一个项目去做官网,导致我很难李姐,所以我提出重构项目,由我主导开发,写篇文章记录一下项目信息以及部分关键点。

技术选型

基础框架 & UI库

基于公司前端团队的小伙伴们都是Vuer,所以毫无质疑,使用Nuxt作为基础框架,UI库没有选,因为做的是官网,好多组件的样式都是比较开放的,很多UI库拿来之后,还得再调,太麻烦,自己去写感觉还是比较爽的。当然项目里UI库的开发参考了Element UI 以及 Vant UI的源码,封装了InputButtonRadioForm等等,学习+实践。

打包工具

Webpack

移动端适配方案

postcss-px-to-viewport真香

PC & Mobile的切换方案

本身考虑的是做媒体查询,但是奈何优秀的UI同学&产品同学的超高水平,大到整体的布局,小到一个标点符号,都有一定程度的修改,所以如果用媒体查询的话,个人认为:1.开发体验较差 2.可维护性较差 3.工作量大 4. 就很不爽。所以考在考虑多方面因素后,决定做M站(古老的方法,但是真香),PC站 & M站 之间的切换方案用的是 Nginx的机型查询。

技术栈归档:

  1. 项目架构:Nuxt + Webpack + Self UI(自己的UI)+ Element Ui + Vant Ui
  2. 代码风格:esLint + prettier
  3. UE:WoW.js + animate.css + page-transition.css + normalize.css
  4. 伪CI/CD(手动狗头):ssh脚本部署
  5. web服务器:Nginx
  6. 进程守护: pm2

前端的同学们可能不太涉及到的点

部署

部署这块,因为我们公司的服务器有限,而且项目比较轻量级,所以部署采用了点对点的SSH部署方式

本地新建.deploy.test.sh

npm run build:test #执行打包命令
tar -zcf dist.tar.gz engconfig.js nuxt.config.js package.json static .nuxt #打一个tar包
sudo scp -i ~/.ssh/id_rsa -r $1 abc@11.22.333.444:/data/......... #上传服务器,$1就是本地dist.tar.gz绝对路径
rm -rf dist.tar.gz .nuxt # 用完删了
复制代码

prod、stage等等环境 同理。

web服务器&进程守护

因为是服务端渲染,我也不是用的generate的打包方式,所以需要在服务器上起一个web server来渲染我的网站,用到了Nginx 和 pm2。

Nginx配置点就是proxy_pass

location / {
    proxy_pass http://localhost:3030
}
复制代码

pm2启动

pm2 start npm --name "xx" -- run start
复制代码

基本就是这些


目录
相关文章
|
存储 应用服务中间件 nginx
nuxt3:我们开始吧-开发-配置-部署(三)
nuxt3:我们开始吧-开发-配置-部署(三)
2276 0
|
JavaScript 前端开发 搜索推荐
Nuxt4.0初体验:一个简约、精美、现代化的个人站点导航!
这篇文章介绍了作者使用Nuxt 4.0重构个性化站点导航网站的经历,阐述了Nuxt 4.0的新特性和优势,如更清晰的项目结构、更好的TypeScript体验、更快的CLI和开发速度等,并且分享了重构过程中的体验和项目完成效果。同时,作者还对比了Nuxt.js与Next.js两个框架的优劣,表达了自己对Nuxt.js的偏好。
580 0
Nuxt4.0初体验:一个简约、精美、现代化的个人站点导航!
|
JavaScript 中间件 API
nuxt3:我们开始吧-开发-配置-部署(一)
nuxt3:我们开始吧-开发-配置-部署(一)
1524 0
|
10月前
|
JavaScript API 网络架构
Nuxt3报错解读:解除“Hydration children mismatch in <div>”的困扰。
记住,每一次报错都是对你编程能力的提升,在你一步步攀爬这座小山时,那些微小而坚实的步伐不仅帮你解决眼前的问题,也正是你构筑面向未来的金字塔的基石。
303 15
|
存储 JavaScript 中间件
Nuxt3 实战 (一):初始化项目
这篇文章介绍了Nuxt框架的基本信息,包括什么是Nuxt以及Nuxt3的优点。文章还介绍了Nuxt3的一些特点,如服务端渲染和静态站点生成、模块化、文件系统路由等。此外,文章还提供了项目安装的步骤和目录结构。最后,文章提到了下一步计划,即配置 Eslint、Prettier、Husky、lint-staged、commitlit项目提交规范的过程。
554 3
Nuxt3 实战 (一):初始化项目
|
JavaScript
vue3- antd design vue 引入iconfont
vue3- antd design vue 引入iconfont
|
数据采集 搜索推荐 开发者
Nuxt3 实战 (十二):SEO 搜索引擎优化指南
这篇文章介绍了如何为Nuxt.js项目添加favicon图标和TDK(标题、描述、关键词),安装@nuxtjs/seo模块,以及如何设置Robots、Sitemap、OG Image、Schema.org、Experiments等。文章还提到了添加Google Analytics、Microsoft Clarity和Umami统计代码的方法。文章最后总结称,Nuxt.js 3集成了很多SEOModules,使开发者能够更加高效便捷地做好搜索引擎方面的优化。
988 0
Nuxt3 实战 (十二):SEO 搜索引擎优化指南
|
资源调度 JavaScript 前端开发
搭建和部署nuxt项目
【8月更文挑战第4天】
|
前端开发 JavaScript API
Nuxt3 实战 (十一):添加路由 Transition 过渡效果和 Loading 动画
这篇文章介绍了Nuxt3框架中页面和布局的过渡效果设置方法,以及首屏加载动画的添加。通过配置nuxt.config.ts文件和添加CSS样式,可以实现页面过渡效果。同时,文章也提到了在页面中设置不同的过渡效果和为布局和页面同时设置过渡效果的方法。最后,文章以一个Github仓库链接和一个线上预览地址作为总结,表示遵循官方文档操作即可完成相关设置。
502 0
Nuxt3 实战 (十一):添加路由 Transition 过渡效果和 Loading 动画
|
JavaScript 安全 网络安全
Nuxt.js 速成(含使用宝塔实现nuxt项目部署)
Nuxt.js 速成(含使用宝塔实现nuxt项目部署)
1816 0

热门文章

最新文章