问题:最近有些朋友问我写官网,用Vue框架实现好不好?

相信很多使用Vue的小伙伴们一样疑惑这个问题,其实从这个问题就可以知道你对Vue这个框架是否真的熟悉了。其实单单使用Vue这个框架来做官网的,其实是不友好的,非常不利于SEO,抓取。因为Vue是通过把你的代码编译的,生成是SPA,里面的html其实是空的,Nuxt.js属于SSR,也就是服务器渲染。Nuxt.js打包生成的每个路由都会对应相对的html文件。有利于网站抓取,SEO。

Vue适合做对seo无关紧要的项目,别的项目不适合,但是Nuxt.js 正好就修补了Vue的这个缺陷。


官方解析:


Nuxt.js环境搭建和创建启动项目

做vue的小伙伴都知道vue-cli脚手架,其实vue-cli已经集成了nuxt.js,所以直接使用vue-cli就可以直接构建Nuxt.js项目了。直接在需要创建项目的路径新建文件夹,文件夹名为项目名称,其实就是和创建vue项目一样。然后在该文件下打开cmd,然后运行下面cmd命令

vue init nuxt/starter

成功创建如下图所示:

然后使用

npm install

下载依赖项,运行项目

npm run dev

此时项目已经运行成功,并且默认在3000端口打开。

浏览器预览:

很高兴告诉你,此时Nuxt.js项目已经创建并且启动成功。


Nuxt.js目录结构

assets                           // 资源目录
components // 组件目录
layouts // 布局目录
middleware // 中间件目录
pages // 页面目录
plugins // 插件目录
static // 静态文件目录
store // 状态管理器目录
nuxt.config.json // 个性化设置目录
package.json // npm包管理配置目录

Nuxt.js常用配置

1.配置主机和端口号

在nuxt.config.js里面追加下面内容

export default {
server: {
port: 8000, // default: 3000
host: '217.0.0.1', // default: localhost
},
}

然后npm run dev,这时候就可以在127.0.0.1:8000端口访问了。

2.配置全局样式

在nuxt.config.js里面追加下面内容

这里声明一下:“~”是Nuxt.js代表根目录的标识

export default {
css: ['~asstes/style.css'],
}

在assets文件夹里面创建style.css,添加内容如下:

html{
background-color: red;
}

然后npm run dev,此时你可以看到页面全部的页面的背景都已经变成红色。

Nuxt.js路由配置和传参

在pages里面创建news文件夹,然后在news文件夹下创建index.vue。

/pages/index.vue

<template>
<section class="container">
<div>
<div>首页</div>
<nuxt-link :to="{name: 'news'},params:{newsId: 1}">新闻</nuxt-link>
</div>
</section>
</template> <script> export default {
}
</script> <style>
</style>

/pages/news/index.vue

<template>
<section class="container">
<div>
<div>新闻页面</div>
<nuxt-link :to="{name: 'index'}">首页</nuxt-link>
   <div>新闻id:{{ $route.params.newsId}}</div>
</div> </section>
</template> <script> export default { } </script> <style> </style>

此时即刻完成首页和新闻业跳转,http://localhost:3000/http://localhost:3000/news,并且传参。

基于Vue的通用框架Nuxt.js的更多相关文章

  1. 基于Vue的Ui框架

    基于Vue的Ui框架 饿了么公司基于vue开的的vue的Ui组件库 Element Ui 基于vue pc端的UI框架 http://element.eleme.io/ MintUi 基于vue 移动 ...

  2. element-ui iview-admin 都是基于vue的ui框架

    element-ui iview-admin 都是基于vue的ui框架

  3. [vue] vue服务端渲染nuxt.js

    初始化 使用脚手架工具 create-nuxt-app 快速创建 npx create-nuxt-app <项目名> npx create-nuxt-app 执行一些选择 在集成的服务器端 ...

  4. 基于vue的UI框架集锦

    前端框架百花齐放.争奇斗艳,令人眼花缭乱.大神们一言不合就整一个框架出来,另小白们无所适从.下面罗列了一些比较优秀的UI框架,Star多的大都是老牌劲旅,Star少的许多是后起之秀. (1)Eleme ...

  5. 基于vue 的 UI框架 -- Mint UI

    网址: http://mint-ui.github.io/docs/#!/zh-cn 官网: http://mint-ui.github.io/#!/zh-cn vue2.0实例: http://bl ...

  6. 基于Vue的UI框架element el-table表格的自定义排序

    html部分: <el-table-column prop="phoneCache" label="手机缓存包编号" align="center ...

  7. react基础学习和react服务端渲染框架next.js踩坑

    说明 React作为Facebook 内部开发 Instagram 的项目中,是一个用来构建用户界面的优秀 JS 库,于 2013 年 5 月开源.作为前端的三大框架之一,React的应用可以说是非常 ...

  8. abp框架Excel导出——基于vue

    abp框架Excel导出--基于vue 目录 abp框架Excel导出--基于vue 1.技术栈 1.1 前端采用vue,官方提供 1.2 后台是abp--aspnetboilerplate 2. E ...

  9. Nuxt.js笔记

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

随机推荐

  1. 【redis】redis的bind配置

    原文:[redis]redis的bind配置   在配置文件redis.conf中,默认的bind 接口是127.0.0.1,也就是本地回环地址.这样的话,访问redis服务只能通过本机的客户端连接, ...

  2. MIPS虚拟机代码

    http://download.eeworld.com.cn/download/mamselc/472333http://download.eeworld.com.cn/detail/lamas/36 ...

  3. 利用js参数,保持客户端文件的新鲜度

    不知道你是否碰到过如下情况,在服务端更新了一个重要的js文件后,由于浏览器的缓存机制,导致用户始终不能获取到最新的文件,此时的你恨不得有孙悟空吹毛化身的法术,帮用户清除浏览器的缓存.缓存既是程序员的好 ...

  4. 响应式与bootstrap

    一.单双击问题 <body> <button>按钮</button> <script src="./jQuery.js"></ ...

  5. 《SpringMVC从入门到放肆》十五、SpringMVC之上传文件

    上一篇我们学习了数据分组校验,已经可以灵活的在项目中进行数据校验了,今天来学习SpringMVC的上传文件功能.相对来说SpringMVC的上传功能,还是比较简单的. 一.添加依赖 <depen ...

  6. java中静态类与普通类之间区别

    所谓静态,指以static关键字修饰的,包括类,方法,块,字段. 非静态,指没有用static 修饰的. 一.静态类的特点 1.全局唯一,任何一次的修改都是全局性的影响 2.只加载一次,优先于非静态 ...

  7. kubernetes实战篇之windows添加自签ca证书信任

    系列目录 由于服务端设置了https访问,因此如果通过浏览器访问时会提示证书不被信任,但是仍然可以通过处理继续访问.但是在自动化环境中,都是通过命令来请求的,这样不受信任的https就会报错误,这样我 ...

  8. Laravel --- 部署Laravel项目到vps主要步骤以及遇到的问题记录

    买了一个国外的vps,然后搭建环境并且跑了下laravel,折腾了一天半左右,遇到的问题和操作在此记录下: 1.我把本地的代码用git方式上传到github,然后在vps用git下载代码,步骤如下 - ...

  9. Python 爬虫从入门到进阶之路(八)

    在之前的文章中我们介绍了一下 requests 模块,今天我们再来看一下 Python 爬虫中的正则表达的使用和 re 模块. 实际上爬虫一共就四个主要步骤: 明确目标 (要知道你准备在哪个范围或者网 ...

  10. HDFS Java API 的基本使用

    一. 简介 二.API的使用         2.1 FileSystem         2.2 创建目录         2.3 创建指定权限的目录         2.4 创建文件,并写入内容 ...