php 服务器端渲染vue,vue服务器端渲染
1.服务器端渲染时。第一次请求页面的时候,由服务器帮忙发送请求拼接好数据,并将拼接好的页面数据返回交给前端渲染。
2.当下次客户端要去跳转页面的时候,此时页面结构页面中的数据全部交给客户端渲染
npm i create-nuxt-app -g
create-nuxt-app my-nuxt-demo //my-nuxt-demo 是名字,选择的时候第一个确定,第二个额选择none,第三个选择none,第四个选择选un,第五个看情况选择,第六个yes,第七个none,第八个确定,第九个npm
cd my-nuxt-demo
npm run dev
路由跳转
第一种方式:
给相应的标签绑定@click=’jumpTo’
然后在函数方法中//
this.$router.push('/相应的路径')
第二种,如果使用组件跳转用nuxt-link组件,它和router-link作用一样,必须要有to属性
v-for="(item,index) in teachers"
:key="index"
>
{{ item.name }}
路由参数
在详情页文件夹中创建一个文件夹叫_id文件夹,把详情页写在里面。
然后在需要点击跳转的页面里加``好跟相应的id
参数校验
校验路由参数,通过validte方法去校验,这个方法不能写到methods中,有一个必须返回的返回值,该值为布尔类型。如果为true就表示校验通过,如果为false就表示校验不通过, 那么就会报页面没有找到
validate(obj) {
// 参数里面可以获取到路由参数
return /^\d+$/.test(obj.params.id)
}
嵌套路由
添加一个Vue文件,作为父文件
添加一个与父文件同名的文件文件夹来存放子视图组件
在父文件中,添加组件,用于展示匹配到的子视图
components
在components文件夹下面新建一个Header.vue组件
引入组件,注意路径的~符号,表示根目录
import .......
components:{}
挖坑
创建layout
去layouts文件夹下面新建一个新的layout组件,例如teachers.vue,并在这个组件中添加组件,这样,所有和teachers相关的页面都会有公共的layout
给需要用到teachers.vue的组件添加layout属性,并指定需要使用的layout,例如:layout: 'teachers'在js中
1.3.2 创建特殊layout : error
layouts文件夹下面新建error.vue,error是关键字
1.3.4 样式配置
nuxt.config.js中设置设置全局样式文件路径,例如
css: [
'~/assets/styles/index.css'
],
ElementUI使用
下载npm i element-ui -S
在plugins文件夹下面,创建ElementUI.js文件
import Vue from 'vue'
import ElementUI from 'element-ui'
Vue.use(ElementUI)
3.在nuxt.config.js中添加配置
css: [
'element-ui/lib/theme-chalk/index.css'
],
plugins: [
{src: '~/plugins/ElementUI', ssr: true }
],
build: {
vendor: ['element-ui']
}
异步数据
如果在created钩子中写异步,是在客户端渲染的而不是在服务端
asyncData(context, callback) {callback(null, data)}
这个函数中不能使用this
context.route.params.xxx获取参数
callback(new Error(), data)渲染出错的页面
这个方法在服务器端执行和在客户端执行的区别
axios的使用
安装
npm install --save axios
使用
import axios from 'axios'
asyncData(context, callback) {
axios.get('http://localhost:3301/in_theaters')
.then(res => {
console.log(res);
callback(null, {list: res.data})
})
}
为防止重复打包,在nuxt.config.js中配置
module.exports = {
build: {
vendor: ['axios']
}
}
php 服务器端渲染vue,vue服务器端渲染相关推荐
- Vue.js 服务器端渲染指南
默认情况下,可以在浏览器中输出 Vue 组件,进行生成 DOM 和操作 DOM.然而,也可以将同一个组件渲染为服务器端的 HTML 字符串,将它们直接发送到浏览器. 简单理解是将组件或页面通过服务器生 ...
- Vue.js服务器端渲染与Vue路由器:分步指南
当我开始使用Vue收集有关SSR(服务器端渲染)的信息时,我必须从不同的文章以及官方文档中获取相关信息,以便全面了解这个主题. 以下是我在这些来源中发现的一些问题: 很多关于你应该拥有的信息的假设,比 ...
- 【Vue】服务器端渲染
一.什么是服务器端渲染? server side render 前端页面的产生是由服务器端生成的,我们就称之为服务端渲染 1.1 新建server文件夹 server 1.2 生成一个node项目 n ...
- vue服务端渲染添加缓存
虽然 Vue 的服务器端渲染(SSR)相当快速,但是由于创建组件实例和虚拟 DOM 节点的开销,无法与纯基于字符串拼接(pure string-based)的模板的性能相当.在 SSR 性能至关重要的 ...
- 客户端渲染换为服务器端渲染_客户端与服务器端渲染:为什么不是全部都是黑白的
客户端渲染换为服务器端渲染 Since the dawn of time, the conventional method for getting your HTML up onto a screen ...
- Vue 服务端渲染(SSR)、Nuxt.js - 从入门到实践
前言 10月初有幸接到公司官网改版需求,要求采用服务端渲染模式对原网站进行seo优化. 由于团队一直使用的vue技术栈,所以我第一时间想到的就是采用vue 服务端渲染(SSR)来实现该需求,即能减少团 ...
- 基于webpack4搭建Vue服务端渲染(SSR)
前言 了解服务端渲染是偶然间一位朋友问了我Nuxt.js的问题,孤陋寡闻的我竟然不知道服务端渲染是什么!赶紧利用空余时间充电,了解大概后觉得正好能解决我当前正遇到的问题,随着我项目的功能逐步扩展首屏加 ...
- Vue 服务端渲染 预渲染
文章目录 简介 那么 什么是服务端渲染 为什么使用服务端渲染 服务端渲染 or 预渲染 区别 如何使用预渲染 如何搭建一个预渲染开发环境 Tip 写在最后 简介 关于 Vue 的 SPA 说的已经太多 ...
- 实现 Vue 服务端渲染(Vue SSR)
什么是服务端渲染(SSR)? Vue.js 是构建客户端应用程序的框架,但是也可以将同一个组件渲染为服务端的 HTML 字符串,将它们直接发送到浏览器,最后将这些静态标记"激活"为 ...
- Vue 服务端渲染原理 拆分成三步个步骤简单的实现一个案例
前言 可能我们平常接触比较多的是使用 vue + vue全家桶来搭建起一个单页(SPA)应用.用 服务端渲染 搭建项目比较少,本文是记录我在学习 服务端渲染 过程中的一些见解,如有出错或疏漏,麻烦帮忙 ...
最新文章
- linux创建组并指定gid的命令,在Linux中用groupadd命令创建组:创建具有特定GID的组及系统组...
- pm2-zabbix 安装与配置
- 6 个核心理念!诠释了吴恩达新书《Machine Learning Yearning》
- 【科普】国内外高质量数据科学竞赛平台有哪些?
- lucene的数据类型
- 无聊!为何说程序员是最实用主义?
- java+ssh+mysql酒店网站管理系统源码
- php参数传递及数据库连接方法
- SCCM 2012 SP1系列(一)先决条件准备-1
- iOS xcode Bundle identifier is missing. NotificationServiceTest doesn't have *****
- oracle计算距离,根据坐标点的经纬度计算距离
- 4月上旬国内域名商净增量Top10:联动天下跻身第10
- webgame php源码,最WEB游戏源码服务端(完整修改版).doc
- 计算机显示 亮度怎么调整,电脑屏幕亮度调整一直显示怎么办
- 杭电多校联赛2017年总结
- 公钥密码学中的三大难解数学问题
- 特征选择:11 种特征选择策略总结!
- the work directory /tmp/ oracle,Oracle升级问题总结
- 南京工资个税计算机,2017南京工资交税标准及个税起征点
- 51单片机定时器初值计算详解