Vue.js通用应用框架-Nuxt.js的上手教程


Posted in Javascript onDecember 25, 2017

对于React,Vue构建的单页面应用老说,SEO是一个众所周知的问题。服务端渲染(SSR-server Side Render)是目前看来最好的解决办法。React应用有Next.js,对应Vue的解决方案就是Nuxt.js。

Vue.js通用应用框架-Nuxt.js的上手教程

1.简介

官网:https://nuxtjs.org/

GitHub:https://github.com/nuxt/nuxt.js

Nuxt.js 是什么?

Nuxt.js 是一个基于 Vue.js 的通用应用框架。

通过对客户端/服务端基础架构的抽象组织,Nuxt.js 主要关注的是应用的 UI渲染。

我们的目标是创建一个灵活的应用框架,你可以基于它初始化新项目的基础结构代码,或者在已有 Node.js 项目中使用 Nuxt.js。

Nuxt.js 预设了利用Vue.js开发服务端渲染的应用所需要的各种配置。

除此之外,我们还提供了一种命令叫:nuxt generate,为基于 Vue.js 的应用提供生成对应的静态站点的功能。

我们相信这个命令所提供的功能,是向开发集成各种微服务(microservices)的 Web 应用迈开的新一步。

作为框架,Nuxt.js 为 客户端/服务端 这种典型的应用架构模式提供了许多有用的特性,例如异步数据加载、中间件支持、布局支持等。

2.构建第一个Nuxt.js项目

推荐使用Nuxt提供的模板。假设你已经安装了vue-cli,如果没有安装请先执行npm install vue-cli -g来安装vue-cli。

$ vue init nuxt-community/starter-template <project-name>

进入到项目文件夹中安装依赖包。

cd <project-name>
npm install

启动项目。

npm run dev

打开浏览器,访问http://localhost:3000。就能看到Next渲染出来的页面了。

3.添加页面

新建完成的项目结构如下图所示:

Vue.js通用应用框架-Nuxt.js的上手教程

项目结构

Nuxt约定所有页面都放在pages文件夹下,Nuxt会根据目录结构自动生成对应的路由。

现在在pages下新建Vue文件test.vue,访问http://localhost:3000/test即可看到刚刚添加的页面。

4.引入第三方插件

通常情况下我们都需要引入第三方的插件,比如前段组件,日志等。
第一步当然是安装插件,此处以element-UI为例。

npm install element-ui

虽然下载了element-ui的包但是却不能像普通项目那样直接在Vue实例中import然后使用。Nuxt的内核项目都在.nuxt目录下,如果修改这下面的文件是不会生效的。因为每次编译都会重新生成文件,所以直接修改该项目文件是无效的。

Vue.js通用应用框架-Nuxt.js的上手教程

内核项目结构

虽然不能直接修改,但是Nuxt提供了特殊的方式引入第三方插件。

第一步,在pulgin文件夹下新建js文件element-ui.js。文件内容如下。

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

第二步,修改nuxt.config.js。添加plugins属性。

/**
   * include third-party plugin
   */
  plugins: ['~plugins/element-ui'] // element-ui.js文件地址

重新编译之后,Nuxt会编译该第三方插件并使用。此时在任何一个Vue文件中都能使用该第三方插件。

5.静态资源文件

你可以把静态资源文件放到static文件夹下,然后就可以使用http://localhost:3000/<文件名>来访问静态资源文件。

Nuxt提供的功能还有很多,比如动态路由,ESLint代码检测。今天先介绍到这里,其他深入的用饭请参考官方网站。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
图片上传即时显示缩略图的js代码
May 27 Javascript
使用JavaScript实现Java的List功能(实例讲解)
Nov 07 Javascript
jquery中event对象属性与方法小结
Dec 18 Javascript
谷歌浏览器不支持showModalDialog模态对话框的解决方法
Sep 22 Javascript
基于BootStrap Metronic开发框架经验小结【七】数据的导入、导出及附件的查看处理
May 12 Javascript
利用transition实现文字上下抖动的效果
Jan 21 Javascript
基于JSONP原理解析(推荐)
Dec 04 Javascript
vue-content-loader内容加载器的使用方法
Aug 05 Javascript
layui select获取自定义属性方法
Aug 15 Javascript
layui实现tab的添加拒绝重复的方法
Sep 04 Javascript
JavaScript仿京东秒杀倒计时
Mar 17 Javascript
webpack 如何同时输出压缩和未压缩的文件的实现步骤
Jun 05 Javascript
微信小程序录音与播放录音功能
Dec 25 #Javascript
利用vue + element实现表格分页和前端搜索的方法
Dec 25 #Javascript
VueRouter导航守卫用法详解
Dec 25 #Javascript
基于zTree树形菜单的使用实例
Dec 25 #Javascript
利用jQuery+localStorage实现一个简易的计时器示例代码
Dec 25 #jQuery
用 Vue.js 递归组件实现可折叠的树形菜单(demo)
Dec 25 #Javascript
详解vue-cli之webpack3构建全面提速优化
Dec 25 #Javascript
You might like
php的header和asp中的redirect比较
2006/10/09 PHP
PHP中iconv函数知识汇总
2015/07/02 PHP
php简单统计中文个数的方法
2016/09/30 PHP
PHP实现的下载远程文件类定义与用法示例
2017/07/05 PHP
tp5(thinkPHP5框架)时间查询操作实例分析
2019/05/29 PHP
Laravel 创建可以传递参数 Console服务的例子
2019/10/14 PHP
PHP封装请求类实例分析【基于Yii框架】
2019/10/17 PHP
捕获关闭窗口的脚本
2009/01/10 Javascript
JS判断不同分辨率调用不同的CSS样式文件实现思路及测试代码
2013/01/23 Javascript
js 获取计算后的样式写法及注意事项
2013/02/25 Javascript
js 控制下拉菜单刷新的方法
2013/03/03 Javascript
js转义字符介绍
2013/11/05 Javascript
jQuery实现瀑布流布局
2014/12/12 Javascript
JavaScript实现数组在指定位置插入若干元素的方法
2015/04/06 Javascript
javascript实现通过表格绘制颜色填充矩形的方法
2015/04/21 Javascript
jQuery实现的五子棋游戏实例
2015/06/13 Javascript
JavaScript方法_动力节点Java学院整理
2017/06/28 Javascript
在Vue中如何使用Cookie操作实例
2017/07/27 Javascript
node实现定时发送邮件的示例代码
2017/08/26 Javascript
五步轻松实现zTree的使用
2017/11/01 Javascript
为什么使用koa2搭建微信第三方公众平台的原因
2018/05/16 Javascript
微信小程序scroll-view仿拼多多横向滑动滚动条
2020/04/21 Javascript
jquery实现的简单轮播图功能【适合新手】
2018/08/17 jQuery
在Vant的基础上实现添加表单验证框架的方法示例
2018/12/05 Javascript
微信小程序使用蓝牙小插件
2019/09/23 Javascript
vue实现输入一位数字转汉字功能
2019/12/13 Javascript
Python装饰器入门学习教程(九步学习)
2016/01/28 Python
python用装饰器自动注册Tornado路由详解
2017/02/14 Python
Python切片操作去除字符串首尾的空格
2019/04/22 Python
与Django结合利用模型对上传图片预测的实例详解
2019/08/07 Python
Oasis服装官网:时尚女装在线
2020/07/09 全球购物
高中生自我鉴定范文
2013/10/30 职场文书
班主任与学生安全责任书
2014/07/25 职场文书
党的群众路线批评与自我批评范文
2014/10/16 职场文书
2014年绿化工作总结
2014/12/09 职场文书
Sql-Server数据库单表查询 4.3实验课
2021/04/05 SQL Server