Nuxt.js综合案例
案例介绍
案例名称:reaWorld
- 一个开源的学习项目,目的就是帮助开发者快速学习新技能
- GitHub仓库
- 在线实例
案例相关资源 - 页面模板:https://github.com/gothinkster/realworld-starter-kit/blob/master/FRONTEND_INS
TRUCTIONS.md - 接口文档 https://github.com/gothinkster/realworld/tree/master/api
学习前提 - Vue.js使用经验
- Nuxt.js基础
- Mode.js,Webpack相关使用经验
学习收货
- 掌握使用Nuxt.js开发同构渲染应用
- 增强Vue.js实践能力
- 掌握同构渲染中常见的功能处理
- 用户状态管理
- 页面访问权限处理
- SEO优化
- 掌握同构渲染应用的发布与部署
项目初始化
创建项目
mkdir realworld-nuxt.js
npm init -y
npm i nuxt
配置启动脚本
创建pages目录,配置初始化页面
导入样式资源
- 导入页面模板
app.html - 导入样式资源
- 配置布局组件
- 配置页面组件
布局组件
- 网站具有公共的头部和尾部,创建layout目录下的index.vue,我们想修改Nuxt.js的默认路由规则,在nuxt.config.js中配置
知识点, 删除nuxt默认的路由配置 routes.splice(0)
导入登录注册页面
- 登录/注册页面我们使用一个组件来完成
- 因为默认的路由被我们手动删除了routes.splice(0),所以我们要在nuxt.config.js中配置路由规则
- 上面的是登录页面,我们在配置注册页面的路由
- 在login页面添加一个计算属性isLogin来判断是登录页还是注册页
导入剩余页面
用户个人资料页面
- pages\profile\index.vue