对于nuxt.js从未接触,对于项目需要进行零散了解,作此归纳,以下都是一个新手的拙见与理解,有不同意见欢迎提出,但请勿喷。

一.项目创建

  npx create-nuxt-app projectName

  npx在NPM版本5.2.0以上默认安装,而安装node.js时会自带安装npx。

  项目创建完成之后进入对应文件路径的cmd窗口,运行命令npm run dev启动项目。项目启动成功之后输入127.0.0.1:3000进入项目(nuxt项目由于是运用了SSR渲染,所以在项目创建之初就自带了一个基于node.js的内置服务器,运行项目其实很大程度来说就是运行这个内置服务器,通过内置服务器来对我们项目的页面进行服务端渲染,也就是SSR渲染,以此来达到搜索引擎的爬虫来爬取我们网站上面的关键词,网站标题,网站描述等信息,以此来更好的利于网站的SEO优化。)

二.nuxt的路由。

1.nuxt在创建项目时会自动生成一个page的文件夹,在里面新建vue文件便会自动生成对应路由,譬如在page中新建了一个名为test.vue的文件,那个项目运行后127.0.0.1:3000/test就是test页面内容

2.如果需要创建二级路由则需要在pages中创建新文件夹,在新文件夹中新建vue文件即可,譬如在pages中新建一个子文件夹test,在里面新建一个test.vue的文件,那么127.0.0.1:3000/test/test就是该页面内容

三.头部信息的添加我个人用到的有两种方式:

1.nuxt.config.js中公用添加。

2.各页面单独添加。

添加方式:在export default{}中添加

head: {

  title: 'my website title',

  meta: [

    { charset: 'utf-8' },

    { name: 'viewport', content: 'width=device-width, initial-scale=1' },

    {

      hid: 'description',

      name: 'description',

      content: 'my website description'

  }],
}
若需要通过请求后台API获取关键词信息和其他头部描述信息,则只需要通过在export default{}中添加请求代码即可,
请求方式如下:
async asyncData({ params }) {
let { data } = await $axios.get("接口API");
return { keyWords: data.resData };
error(params);
},
此时keyWords便是你请求获取的数据,然后将数据替换到head对应位置即可,譬如我的关键词信息只需要将我上面代码中的"my website description"替换为this.keyWords即可。
 
四,对于第三方插件的引入
如果需要引入第三方插件,则需要通过npm或者cnpm下载资源之后引入。
1.首先在生成plugins文件夹,该文件夹就是用来存放引入第三方插件与配置信息的js文件,譬如swiper插件,我引入swiper的包,做好相关配置之后命名为vue-swiper.js。
2.然后在nuxt.config.js中的plugins:[ ]代码块中加入引入代码即可,实例如下:

plugins: [
{
src: "~/plugins/vue-swiper.js",
ssr: false
}
]
其中src为你的第三方插件的引用与配置js文件路径,ssr表示是否需要在服务器端就开始进行渲染,一般都填false,因为对于前端常用的第三方插件来说大部分都是基于window或者document的,但是服务端没有window与document,这样就会导致项目报错,对于第三方插件的引入最常见的错就是window或者document is not found或者undefined。
3.对于只需要在某一页面引入的第三方插件也可以在vue文件中的script标签中用import的方式进行引入。
 
 

nuxt.js相关随笔的更多相关文章

  1. Nuxt.js开启SSR渲染快速入门

    第一节:nuxt.js相关概述 nuxt.js简单的说是Vue.js的通用框架,最常用的就是用来作SSR(服务器端渲染).Vue.js是开发SPA(单页应用)的,Nuxt.js这个框架,用Vue开发多 ...

  2. 从壹开始 [ Nuxt.js ] 之二 || 项目搭建 与 接口API

    前言 哈喽大家周一好,今天的内容比较多,主要就是包括:把前端页面的展示页给搭出来,然后调通接口API,可以添加数据,这两天我也一直在开发,本来想一篇一篇的写,发现可能会比较简单,就索性把项目搭建的过程 ...

  3. 从壹开始前后端分离 [ vue + .netcore 补充教程 ] 二八║ Nuxt 基础:面向源码研究Nuxt.js

    前言 哈喽大家周五好,又是一个开开心心的周五了,接下来就是三天小团圆啦,这里先祝大家节日快乐咯,希望都没有加班哈哈,今天公司发了月饼,嗯~时间来不及了,上周应该搞个活动抽中几个粉丝发月饼的,下次吧,这 ...

  4. Nuxt.js笔记

    前置知识 SSR服务器渲染 Vue SSR(server side rendering)服务端渲染 和 Vue SPA(single page application)单页应用 Vue SSR-> ...

  5. Nuxt.js学习

    SSR服务端渲染 之前用vue做项目时,在浏览器中查看网页源码,是没有具体内容的,只有一个标签,用服务端渲染的话,查看网页源码数据都会显示出来,所以有利于SEO,能够被搜索到. Nuxt.js是做Vu ...

  6. vuejs服务端渲染更好的SEO,SSR完全指南Nuxt.js静态站生成器

    vuejs服务端渲染更好的SEO,SSR完全指南Nuxt.js静态站生成器SSR 完全指南https://cn.vuejs.org/v2/guide/ssr.html在 2.3 发布后我们发布了一份完 ...

  7. ssr 之Nuxt.js

    ssr:server side rendering(服务端渲染),目的是为了解决单页面应用的 SEO 的问题,对于一般网站影响不大,但是对于论坛类,内容类网站来说是致命的,搜索引擎无法抓取页面相关内容 ...

  8. Nuxt.js项目实战

    感悟 经过几个周六周日的尝试,终于解决了服务端渲染中的常见问题,当SEO不在是问题的时候,或许才是我们搞前端的真正的春天,其中也遇到了一些小坑,Nuxt.js官方还是很给力的,提issue后很积极的给 ...

  9. Nuxt.js实践篇

    nuxt.js 追求完美,相信大家都是这样的.因为前后端分离的弊端性,在项目构建时,浏览器并不会捕捉到项目的内容,所以开始,笔者决定引入nuxt.js文件来配合vue完成Server Slider R ...

随机推荐

  1. HBase的安装与部署

    一.部署前置环境 先部署分布式的高可用版的Hadoop,即ZooKeeper+Hadoop. https://www.cnblogs.com/live41/p/15483192.html * 部署的服 ...

  2. hdu 1166 敌兵布阵(单点更新,区间查询)

    题意: N个工兵营地.工兵营地里的人数分别为:a1,a2,....aN Add i,j:第i个工兵营地里增加j人 Sub i,j:第i个工兵营地里减少j人 Query i,j:查询第i个第j个工兵营地 ...

  3. docker+nginx搭建tomcat集群(附录)——nginx.conf文件

    附录:nginx.conf修改后的文件内容 user root;worker_processes 2; #error_log logs/error.log;#error_log logs/error. ...

  4. openssh 8.2 升级 8.3

    openssh 8.2 存在安全漏洞,升级为 openssh 8.3 需要安装的包:openssh-8.3p1.tar.gz.zlib-1.2.11.tar.gz.openssl-1.1.1g.tar ...

  5. C++ 内存四区 理解总结

    内存模型图(4G) 整体简单说明 32位CPU可寻址4G线性空间,每个进程都有各自独立的4G逻辑地址,其中 03G是用户空间**,**34G是内核空间即3G用户空间和1G内核空间,不同进程相同的逻辑地 ...

  6. [python]Appium+python +pytest 实现APP自动化,基于安卓

    1.安卓环境搭建 &关于app自动化,个人觉得安装过程比较复杂,脚本难度实现和web自动化差不多封装关键字即可,因此,下面会写安装.启动APP以及过程中遇到的一些坑(这一篇偏向解释给个人) & ...

  7. LeetCode刷题 字符串详解

    一.字符串常用的操作 1. string类 1.1 string的定义与初始化 1.1.1 string的定义 1.1.2 string的初始化 1.2 string的赋值与swap.大小操作.关系运 ...

  8. request truncate large response body

    requests.exceptions.ChunkedEncodingError: ('Connection broken: IncompleteRead(0 bytes read, 512 more ...

  9. Django笔记&教程 3-3 模板常用语法

    Django 自学笔记兼学习教程第3章第3节--模板常用语法 点击查看教程总目录 本文主要参考:https://docs.djangoproject.com/en/2.2/ref/templates/ ...

  10. thinkphp5 目录结构

    /*    ├─application           应用目录    │  ├─common             公共模块目录(可以更改)    │  ├─module_name       ...