项目目标

把我个人博客的前端界面部分使用nuxt框架进行服务端渲染

nuxt介绍

nuxt可以把spa根据路由将单页面分割成多页面,比起vue的ssr渲染要更容易使用

nuxt的使用

项目创建

npx create-nuxt-app <项目名>

nuxt的目录结构

其中layouts目录用于存放APP.vue,将其改名为default.vue,既可使用全局的界面配置,注意得用 <nuxt/>代替<router-view>

nuxt的界面嵌套

pages目录用于存放vue项目的路由页面,nuxt默认情况下根据该目录,对路由进行配置,自动生成路由,所以无特殊情况是不需要自己手动配置路由的

components目录用于将vue项目的组件移动到此目录

plugins目录是插件的使用,例如如果项目使用了element.ui,则需要在该目录下配置,配置方法是在目录下新建elementui.js,并在文件下写入如下代码

import Vue from 'vue'
import ElementUi from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
import 'element-ui/lib/theme-chalk/display.css'
Vue.use(ElementUi);

同时使用npm安装element-ui插件

然后在nuxt.config.js文件中进行配置

module.exports = {
plugins: ['~/plugins/elementui']
}

assets文件用于存放需要被webpack打包的图片和css文件

注意:在使用路径引入图片时需要在路径前面加上~,不然会报错

store文件夹用于存放vuex文件,在文件夹下新建index.js文件,导出方式大概如下

export const state = () =>({
isLogin: false,
user:""
}) //state必须是函数才行 export const mutations = {
userStatus(state, flag) {
state.isLogin = flag
},
setuser(state,flag){
state.user = flag;
window.$cookies.set("user_session","haslogin",60 * 60 * 24)
},
getuser(state,flag){ var value = window.$cookies.get("user_session") if(value === "haslogin"){ state.isLogin = true;
} } }
export const actions = {
userLogin({commit}, flag) {
commit("userStatus", flag)
},
setusername ({commit},flag){
commit("setuser",flag)
},
getusername ({commit},flag){
commit("getuser",flag)
}
}
export const getters = {
isLogin: state => state.isLogin,
user:state =>state.user
}

未完待续

nuxt初探先到此,当然还有很多东西没有涉及,像动态路由,中间件的使用,还有vuex项目的使用等等,项目也还没改造完成,所以未完待续

最新文章

  1. ASP.net之策略模式
  2. Android实战技巧之十二:Android Studio导入第三方类库、jar包和so库
  3. Volley获取网络图片使用总结
  4. Redis 配置文件 redis.conf 项目详解
  5. 802.11 wireless 三
  6. 卷积相关公式的matlab代码
  7. RhinoMocks简单范例
  8. 4G通信技术LTE介绍
  9. hadoop2.2编程:用ruby跑hadoop的完整实例
  10. 详细解析 RxAndroid 的使用方式
  11. iOS开发---转换坐标系
  12. linux c语言定时器
  13. Mongoose基础入门
  14. 通过对DAO层的封装减少数据库操作的代码量
  15. A-论文一些好的句子
  16. js跟随的广告
  17. centos6+nginx+php+mysql+memcached+wordpress
  18. 初识TCP/IP协议
  19. 内存检查工具Valgrind
  20. C++面向对象高级编程(八)模板

热门文章

  1. 2018-8-10-C#-6.0-字符串-String-Interpolation
  2. If条件语句实战
  3. java 如何重写equals
  4. SpringBoot如何优雅的使用RocketMQ
  5. HashMap、Hashtable、LinkedHashMap、TreeMap、ConcurrentHashMap的区别
  6. ELK学习实验005:beats的一些工具介绍
  7. 【题解】PKUWC2018简要题解
  8. 【题解】[HAOI2018]染色(NTT+容斥/二项式反演)
  9. Java虚拟机详解(十一)------双亲委派模型
  10. day2(使用list和tuple)