定义测试接口
通过RAP对主要的页面定义测试接口,这里不多讲,有兴趣的同学看文档即可操作。进入RAP主页搜索团队:稻米影视,就可以看到相关的接口及参数,点击链接查看相关接口。
pug模板
使用标签的形式比较繁琐,这里我选择使用Pug,它是基于缩进嵌套的dom结构而不是以标签的形式。Pug原名不叫Pug,原来是jade,后来由于商标的原因,改为Pug,其实只是换个名字,语法都与jade一样。
安装pug
|
|
在vue中使用pug模板,需要在template标签中设置lang="pug"即可。
首页
使用pug模板,同时填充数据。修改page/index.js
|
|
首页名称
|
|
创建showHouse(item)和showCharacter(item)点击事件,点击后跳转页面。
|
|
在页面加载之前请求到数据
|
|
获取数据
state中定义数据,修改store/index.js
|
|
添加获取数据的services,修改store/actions.js
|
|
复制RAP中定义的接口地址,拼接请求地址通过axios获取数据。修改store/services.js
|
|
通过辅助函数mapState获取数据。
|
|
数据获取成功,如图:

样式
这个项目使用sass,具体不多讲了,直接上过程。
安装sass
|
|
sass文件全都放在static/sass目录下,依次添加基础样式文件
|
|
编辑index.sass,具体代码不贴了,在项目看源码就成。
配置sass,修改nuxt.config.js
|
|
团队主页
pages/house/index.vue
|
|
主页名称
|
|
页面加载之前请求数据,通过 this.$route.query.id获取上个页面传过来的id值,通过id获取相应的数据。
|
|
获取数据
同理,通过mapState获取house数据
|
|
定义点击当前的house,修改store/index.js
|
|
获取数据,修改store/actions.js
|
|
store/service.js
|
|
页面效果如图:

团队角色主页
个人主页主要分两大部分:一是头像及个人信息,二是个人技能。
pages/character/index.vue
|
|
主页名称
|
|
获取id值
|
|
获取数据
同理,通过mapState获取character数据
|
|
定义点击当前的character,修改store/index.js
|
|
获取数据,修改store/actions.js
|
|
store/service.js
|
|
页面效果如图:

导航
导航分为三部分:首页、周边、我的账户。
components/nav.vue
|
|
添加导航数据名称
|
|
动态设置route名称
|
|
页面效果:

周边手办商城页
pages/shopping/index.vue
|
|
主页名称
|
|
在页面加载之前请求数据
|
|
获取数据
获取products数据
|
|
定义products,修改store/index.js
|
|
store/actions.js
|
|
store/service.js
|
|
页面展示如图:

商品详情页
商品详情页会用到轮播图展示,这里使用vue-awesome-swiper插件。
安装vue-awesome-swiper
|
|
修改nuxt.config.js
|
|
pages/deal/index.vue
|
|
添加swiper配置
|
|
请求数据
|
|
获取数据
|
|
store/index.js
|
|
store/actions.js
|
|
store/service.js
|
|
个人中心
pages/user/index.vue
|
|
请求数据
|
|
获取数据
|
|
store/index.js
|
|
store/action.js
|
|
store/serivce.js
|
|
页面展示:

