nuxt引入js_Nuxt.js使用笔记

本文是关于Nuxt.js的使用笔记,涵盖了Nuxt.js的基本目录结构、单应用与SEO优化、样式预处理器配置、接口管理、中间件使用、插件集成以及静态资源处理等方面。通过实例介绍了如何在Nuxt.js中引入和配置SASS、Axios、Element UI等,并讲解了服务器端渲染、动态脚本加载和自定义页面布局等高级特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Cap1 前言

目前使用Nuxt.js框架做了几个项目,不得不说对比与Vue-CLI,Nuxt.js实在是懒人必备框架,什么东西都帮你配置好了。所以多少对它有点了解,所以有了这个笔记。希望未来再做类似的地方有个能够参考的笔记。

Cap2 目录结构

/assets # 能被webpack处理的项目资源

/components # 项目组件

/layouts # 项目布局

/middleware # 项目中间件

/pages # 项目页面 页面路由自动生成

/plugins # 项目插件

/static # 不被webpack处理的静态资源

/store # Vuex状态管理目录

nuxt.config.js # Nuxt.js配置文件

package.json # npm包管理器文件

/assets:这个目录可以存放字体,样式,图片等,这些资源将会被WebPack处理器编译最终形态文件。

/components:存放Vue.js组件目录,如果Nuxt.js特征方法是不能在该目录下使用的。

/layouts:存放项目布局组件,在不同的页面展示双栏或者单栏布局。

/middleware:放置项目中间件应用,例如路由鉴权等功能。

/pages:放置项目视图和路由。Nuxt.js 框架读取该目录下所有的 .vue 文件并自动生成对应的路由配置。

/plugins:放置声明Vue插件或者一些JavaScript插件配置文件。

/static:放置静态资源目录,可以启动后直接访问资源。

/store:Vuex状态树管理配置文件。

nuxt.config.js:用于Nuxt.js配置,覆盖默认设置。

除了上面默认的文件夹,我们可以自己额外添加文件:

/api:存放项目接口文件。

/utils:项目工具类。

/test:单元测试类。

Cap3 单应用和seo优化

现在绝大项目都是前后端分离的项目,所以纯粹作为静态页面来编写,打开nuxt.config.js修改其中的mode: 'spa'即可。然后将package.json中的dev启动方式修改成"dev": "nuxt --spa"加快启动编译项目。

SPA:没有服务器端渲染(只有客户端路由导航等)

Universal :同构应用程序(服务器端呈现+客户端路由导航等)

Nuxt.js的SEO优化还算可以,需要注意header设置meta设置,Nuxt.js使用的是Vue-Meta,可以到它文档查看相关设置:

export default {

/*

** Headers of the page

*/

head: {

htmlAttrs: {

lang: 'zh-CN',

},

title: `淮城一只猫`,

meta: [

{ charset: 'utf-8' },

{ name: 'apple-mobile-web-app-capable', content: 'yes' }, // iOS浏览器禁止缩放

{ name: 'viewport', content: 'width=device-width, initial-scale=1.0, shrink-to-fit=no, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no' },

{ hid: 'keywords', name: 'keywords', content: 'keywords' },

{ hid: 'description', name: 'description', content: 'description' },

{ name: 'renderer', content: 'webkit' }, // 强制让360浏览器使用Webkit内核

{ 'http-equiv': 'X-UA-Compatible', content: 'IE=edge' },

],

script: [],

link: []

},

}

然后在pages每个页面设置:

export default {

head() {

return {

title: "淮城一只猫 - 首页"

};

}

}

如果能力有条件的可以尝试Nuxt PWA,这里就不再详细描述了。

服务端渲染

如果在前端展示的时候,给搜索引擎爬虫抓取页面需要注意更好的SEO展示,那么就需要服务器端渲染了(SSR),具体内容可以查看官网文档:为什么使用服务器端渲染 (SSR)?

主要博主做的项目大部分都是后端界面,所以对此也不是太熟,故这里就不再描述了。

Cap4 样式预处理器

配置样式预处理器也很简单,Nuxt.js有自己封装的包:Nuxt Style Resources,支持sass、less、stylus。现在项目用sass处理器比较多,就以它为例:

yarn add sass-loader node-sass # 安装SASS预处理器

yarn add @nuxtjs/style-resources # 安装nuxt.js 样式模块

在nuxt.config.js添加:

export default {

modules: [

'@nuxtjs/style-resources', // 导入模块

],

/*

** Sass module

*/

styleResources: {

// your settings here

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值