帮助中心

nuxtjs目录结构其目录结构包含了一个项目开发中通用的东西assets 存放静态资源componets 存放vue组件,这类组件类似于react中的无状态组件,可复用的用于构建页面内容,但不具有nuxtjs提供的特性layouts 存放布局组件,但我感觉实际编写代码时作用不大?middleware 存放中间件,有express或者koa开发经验的话,应该很容易理解pages 类似于spa中的vi

当前位置: 首页  >> 新闻中心  >> 帮助中心  >> 查看详情

nuxt.js结构介绍及快速入门

浏览量:1117 时间:2023-08-16 05:34:05

nuxtjs目录结构

其目录结构包含了一个项目开发中通用的东西

序列号 CPU RAM HDD 带宽 售价(美元) 免费试用
香港服务器1 E5-2620 32G 1T HDD 50M/无限流量 $196.00 立即申请
香港服务器2 E5-2650 32G 1T HDD 50M/无限流量 $256.00 立即申请
香港服务器3 E5-2680 32G 1T HDD 50M/无限流量 $316.00 立即申请
香港服务器4 E5-2690 32G 1T HDD 50M/无限流量 $336.00 立即申请
香港服务器5 E5-2697 32G 1T HDD 50M/无限流量 $376.00 立即申请
香港服务器6 E5-2620*2 32G 1T HDD 50M/无限流量 $376.00 立即申请
香港服务器7 E5-2650*2 32G 1T HDD 50M/无限流量 $436.00 立即申请
香港服务器8 E5-2680*2 32G 1T HDD 50M/无限流量 $476.00 立即申请
香港服务器9 E5-2690*2 32G 1T HDD 50M/无限流量 $556.00 立即申请
香港服务器10 E5-2697*2 32G 1T HDD 50M/无限流量 $596.00 立即申请
香港服务器11 E5-2680v4*2 32G 1T HDD 50M/无限流量 $696.00 立即申请
香港服务器12 E5-2698v4*2 32G 1T HDD 50M/无限流量 $796.00 立即申请

assets 存放静态资源

componets 存放vue组件,这类组件类似于react中的无状态组件,可复用的用于构建页面内容,但不具有nuxtjs提供的特性

layouts 存放布局组件,但我感觉实际编写代码时作用不大?

middleware 存放中间件,有express或者koa开发经验的话,应该很容易理解

pages 类似于spa中的views文件夹,是整个项目中最重要的内容,值得一提的是,nuxtjs会根据pages的结构自动生成router

plugins 用于存放插件的配置文件,以elementui为例

importVuefrom'vue'importElementfrom'element-ui'importlocalefrom'element-ui/lib/locale/lang/en'Vue.use(Element,{locale})

这里用Vue.use()全局注册了elementui,后面需要按需引入的时候,还得修改

static 存放静态文件,文件夹中的内容会被映射的根目录下,并且不会被webpack编译处理

store 和vuex相关,存放spa单页应用中的vuex配置

nuxt.config.js 是nuxtjs的配置文件,可以配置项目的入口文件,类似于koa中的/bin/www

值得一提的是 ~ 可以代表根目录,不用再编写../../之类繁琐的路径url

nuxt.config.jsexportdefault{mode:'universal',//选择单页模式还是多页模式/***Headersofthepage*///由于项目没有html文件,这里可以直接指定title,以及其他配置head:{title:process.env.npm_package_name||'',meta:[{charset:'utf-8'},{name:'viewport',content:'width=device-width,initial-scale=1'},{hid:'description',name:'description',content:process.env.npm_package_description||''}],link:[{rel:'icon',type:'image/x-icon',href:'/favicon.ico'}]},/***Customizetheprogress-barcolor*/loading:{color:'#fff'},/***GlobalCSS*/css:['element-ui/lib/theme-chalk/index.css'],//全局引入css文件/***PluginstoloadbeforemountingtheApp*/plugins:['@/plugins/element-ui'],/***Nuxt.jsdev-modules*/buildModules:[],/***Nuxt.jsmodules*/modules:[],/***Buildconfiguration*//build:{transpile:[/^element-ui/],/***Youcanextendwebpackconfighere*/extend(config,ctx){}}}

其实配置文件还是比较通俗易懂的,其他的配置要看文档的api了

路由基础路由

是由nuxtjs自动根据pages的结构生成的

动态路由

给vue文件或者文件夹添加_ 即可。对于动态路由可以添加路由校验,如果不满足要求,那么返回错误页面

嵌套路由

在vue文件的同名文件夹中编写vue页面即可

pages/--|users/-----|_id.vue-----|index.vue--|users.vue

中间件

在middleware文件夹中添加js文件,其将会在下一个页面跳转之前执行,其接收的参数是ctx。

中间件执行流程顺序:

nuxt.config.js

匹配布局

匹配页面

也就是说,应该在nuxt.config.js layout或者pages中添加middleware之后,中间件才会被执行

类似于这样

//vue文件中exportdefault{middleware:'stats'//中间件名}//nuxt.config.js中module.exports={router:{middleware:'stats'}}

视图

官网的图应该很清晰的展现了nuxtjs视图

创建app.html

可以修改ie的条件表达式等,中小型项目其实没有必要改

//默认模板{{HEAD}}{{APP}}//修改后的模板{{HEAD}}{{APP}}

布局

即通过修改layout/default.vue可以修改页面的布局

类似于spa中的app.vue的作用

可以在默认布局中添加header之类的东西

但是如果使用自定义layout,必须在pages中指定

pages

这是nuxtjs中最主要的内容

一些不同于传统vue的特殊项

24小时服务器机房客服
帮助中心
  • 24H在线
  • Tg纸飞机