起因:

前段时间,同组小伙伴使用vue做了一个小后台,使一位后端沉寂多年得求道之心又躁动了起来。。。然后,当我和这个躁动起来得后端要合作重构一个网站得时候,后端小哥哥说,就知道套页面,套页面,不用新技术,那一脸得恨铁不成钢 我至今想起来犹觉得记忆犹新,然后就有了后面得踩坑之路。

关于nuxt -- nuxt是一套基于vue,整合了vue全家桶得框架,为什么要选他呢,主要是因为可以解决seo问题。

现在想从头开始回顾一下自己遇到得坑:

  • 首先遇到得一个比较严重得问题是,微信相关得业务,而整个项目就用到了两个,一个是微信登陆,另外一个是微信分享。

解决方案

就是自己用express写了个回调页,百度一下node微信登陆,基本套路搞清楚之后,就是在最后拿到unionid openid之后返给后端,生成token,再将token写进cookie里,重定向到发生跳转时得那个页。至于微信分享,也是写了个接口,唯一自己做了点额外得工作,也必须做得就是缓存了一下accesstoken和jsticket。

  • 然后是关于一个vue中使用swiper小插件得一个坑,有个页面是做成tab切换了,而后下边tab得内容需要做成联动得,这就需要我在swiper动画结束得回调里取得当前得activeIndex

解决方案

直接贴代码

swiperOption: {

    on: {
        slideChange:() => {
            if( this.mySwiper )
            this.curActiveItem = this.mySwiper.activeIndex;
        }
    }
},

这个坑得主要来源是swiper回调得时候是没有参数得回调,本来会以为将当前得activeIndex直接传到回调里,可是这个回调时真的没有参数,后来只能通过这种方式比较曲折得拿到index,进而使上边得tab发生联动效果。

  • 活久见: fixed 定位得参考目标不是视口

解决方案

这个也是在搞这个swiper得时候出现得,后来发现了问题得来源:

当元素祖先的 transform  属性非 none 时,容器由视口改为该祖先。

然后解决方案就是不在具有transform属性得元素里边使用fixed定位呗。但是在多组建嵌套的时候,由于不注意更容易出现这个问题。

  • 项目部署,自己写的接口404了

解决方案

既然已经自己用express重写server了,就需要把server也和打过包的文件一起上传到服务器,然后启动命令start变成 cross env 参数  server/index.js 。这个坑是最可怕的,官方文档在这一步上一笔带过,其他的博客也没提到过这个,为了这个同组的小伙伴都愁的不要不要的了。

而后其他的都是些小问题了,整个站说大不大,说小不小,总共花费了整整十天的时间,真的是从零到一的过程,此前我们公司从来没有干过这个。当初决定使用nuxt也是我向总监提的,自然,整个过程中就感受到很多无形的压力,睡眠质量都不好了。幸好,最后也算正常的上线了,网页比起以前也有了更好的用户体验,对于我们程序员来说也算提高了点工作效率,维护起来不变得比以前容易了。

最后附上项目地址:

绘佳新***官网

nuxt,从开发到线上部署的更多相关文章

  1. Django线上部署代码修改失效问题

    记一次django项目的线上部署维护问题,django+nginx 关于nginx反向代理服务器的介绍这里有一篇博客介绍的比较好:nginx的相关介绍 以及当一次客户端请求发出后,uwsig以及uWS ...

  2. Docker实战 | 第三篇:Docker安装Nginx,实现基于vue-element-admin框架构建的项目线上部署

    一. 前言 在上一文中 点击跳转 通过IDEA集成Docker插件实现微服务的一键部署,但 youlai-mall 是前后端分离的项目,除了后端微服务的部署之外,当然还少不了前端工程的部署.所以本篇讲 ...

  3. Node+mongodb线上部署到阿里云

    Node+mongodb线上部署到阿里云 部署使用的主要工具是pm2+nginx,使用码云的私有仓库,自动部署到服务器,私有仓库和服务器要事先设置好免密码登录.使用DNSPOD进行域名解析.事先准备好 ...

  4. 【Maven篇】---解决Maven线上部署java.lang.ClassNotFoundException和no main manifest attribute解决方法

    一.前述 maven 线上部署的话会出现一些问题比如java.lang.ClassNotFoundException或者no main manifest attribute的话,是因为maven 配置 ...

  5. 关于docker线上部署时间问题

    背景 公司线上部署采用docker swarm方式,这几天线上项目时间突然出了问题(ps:第一反应,我去,这也能出问题,代码里肯定藏毒了),线上时间总跟实际时间差八个小时.本着速战速决的原则,把所有时 ...

  6. FastAdmin 线上部署流程 (2018-05-03 更新)

    FastAdmin 线上部署流程 首次部署 建立 git 环境. 建立 composer 环境. 建立 bower 环境. 将远程项目代码 git clone 到服务器上. 执行 composer i ...

  7. vue-router+webpack线上部署时单页项目路由,刷新页面出现404问题

    使用vue项目,线上部署的时候,访问首页以及通过路由打开二级页面没有问题,但是一刷新就出现404现象 因为刷新页面时访问的资源在服务端找不到,因为vue-router设置的路由不是真实存在的路径. 解 ...

  8. Django线上部署教程:腾讯云+Ubuntu+Django+Uwsgi(转载)

    网站名称: 向东的笔记本 本文链接: https://www.eastnotes.com/post/29 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议.转载请注明出处! ...

  9. Node线上部署管理器PM2

    PM2是一个带有负载均衡功能的Node应用的进程管理器.PM2可以利用服务器上的所有CPU,并保证进程永远都活着,0秒的重载,部署管理多个Node项目.PM2是Node线上部署完美的管理工具. PM2 ...

  10. Joomla - 部署(线上部署)

    一.线上部署 线上部署可以理解为把本地网站迁移到线上,使用 akeeba backup 进行备份和迁移即可 参考 Joomla - akeeba backup(joomla网站备份.迁移扩展)的第三. ...

随机推荐

  1. jsch文件复制(拷贝)

    public void copyFile(Session session, String sourceFile, String destinationFile) { ChannelExec chann ...

  2. gdb 初次运行卡住 Starting program: [New Thread 0x1103 of process 843]

    安装完后gdb一般会有提示: ==> gdbgdb requires special privileges to access Mach ports.You will need to codes ...

  3. Qt/C++音视频开发80-ffmpeg实现srt推拉流/实时性非常好/音视频同步/支持格式众多

    一.前言 目前互联网上的视频直播有两种,一种是基于RTMP协议的直播,这种直播方式上行推流使用RTMP协议,下行播放使用RTMP,HTTP+FLV或者HLS,直播延时一般大于3秒,广泛应用秀场.游戏. ...

  4. Qt编写视频监控系统67-录像计划(支持64通道7*24录像设置)

    一.前言 录像计划这个功能一直挂了很久,之前做的也都有保存视频文件功能,其中还分了三大种,第一种是手动开启和停止录像:第二种是按照指定时长比如10s保存文件:第三种是定时30分钟一个文件一直保存.这三 ...

  5. [转]Ceres求解优化问题

    1. 简介Ceres Solver是专门用于求解非线性最小二乘问题的C++开源库,研究SLAM方向不过滤波和优化两个技术路线,因此常用Ceres库解决实际项目中的优化问题,当然还有g2o同样可用,但就 ...

  6. [转]升级/重装win10系统--提示无法验证密钥的解决办法

    在由win7系统升级到win10时,出现了无法验证密钥的问题(还未提示输入密钥的时候就直接提示无法验证密钥),英文版报错为:Windows 10 setup has failed to validat ...

  7. IM通讯协议专题学习(一):Protobuf从入门到精通,一篇就够!

    本文由IBM开发者社区分享,有较多修订和改动. 1.引言 在当今移动网络时代,手机流量和电量是宝贵的资源,对于移动端最常见的即时通讯IM应用,由于实时通信基于Socket长连接,它对于流量和电量的需求 ...

  8. 前端学习openLayers配合vue3(面的绘制,至少三个点)

    我们学习了点和线的绘制,当然我们也可以绘制一个面 关键代码,需要注意的一点就是面的绘制需要三维数组,线的绘制是个二维数组 const polygonLayer = new VectorLayer({ ...

  9. 【事件分析】20250112-Usual 赎回机制调整事件

    背景信息 https://docs.usual.money/ Usual 是一个聚合 RWA 的稳定币发行协议,经济模型中存在三种代币: USD0:Usual 发行的稳定币. USD0++:USD0+ ...

  10. 微服务实战系列(十)-网关高可用之中间件Keepalived-copy

    1.场景描述 因为要做网关的高可用,用到了keepalived+nginx,来保证nginx的高可用,如下图: 安装了keepavlived,走了一些弯路,记录下吧,nginx的安装就不多说了,博客已 ...