Vue服务端渲染Nuxt.js实例

简介: Vue服务端渲染Nuxt.js实例

nuxtjs: https://zh.nuxtjs.org/

SSR:server side render

1、使用模板新建项目

vue init nuxt-community/starter-template <project-name>
cnpm install
npm run dev

2、配置axios

https://github.com/nuxt-community/axios-module

cnpm install @nuxtjs/axios

nuxt.config.js

module.exports = {
  modules: [
    '@nuxtjs/axios',
  ],
  axios: {
    // proxyHeaders: false
  }
}

3、开发页面

新建页面, 会自动生成路由

pages/demo.vue

<template>
  <h1>{{message}}: {{name}}</h1>
</template>
<script>
export default {
  data() {
    return {
      message: "hello"
    };
  },
  // 向后端请求数据
  async asyncData({app, params, query}) {
    /**
    参数
    ctx.app; // 根实例
    ctx.route; // 路由实例
    ctx.params; //路由参数
    ctx.query; // 路由问号后面的参数
    ctx.error; // 错误处理方法
     */
    let url = "http://127.0.0.1:5000/";
    const res = await app.$axios.$post(url, query);
    console.log(res);
    return res.data;
  },
  // 配置SEO页面元数据
  head: {
    title: "关于我们",
    meta: [
      { hid: "keywords", name: "keywords", content: "关键字" },
      { hid: "description", name: "description", content: "页面描述" }
    ]
  }
};
</script>

4、后端服务

使用Flask搭建简单后台服务,提供数据

# -*- coding: utf-8 -*-
from flask import Flask, jsonify, request
app = Flask(__name__)
# 服务端接收post的json数据,并返回给客户端
@app.route("/", methods=["POST"])
def index():
    data = {
        "msg": "ok",
        "code": 0,
        "data": request.json
    }
    return jsonify(data)
if __name__ == '__main__':
    app.run(debug=True)

5、访问页面

http://localhost:3000/demo/?name=Tom

7.2.png


查看页面源码,已经包含正确的内容

7.3.png


打包

# 打包
npm run build
# 本地跑
npm start

部署参考文章:

nuxt.js部署vue应用到服务端过程

参考

Nuxt.js 基础入门教程

Nuxt.js实战和配置

相关文章
|
7月前
|
JavaScript 前端开发 算法
vue渲染页面的原理
vue渲染页面的原理
244 56
|
6月前
|
前端开发 JavaScript Java
【Java进阶】JavaScript电灯开关实例:从理论到实践
这个例子展示了JavaScript的基本功能,包括操作HTML元素,监听事件,以及改变元素的样式。通过学习和理解这个例子,你可以了解到JavaScript在网页中的应用,以及如何使用JavaScript来创建交互式的网页。
117 13
|
JavaScript 前端开发 开发者
VUE 开发——Node.js学习(一)
VUE 开发——Node.js学习(一)
237 2
|
8月前
|
数据采集 JavaScript Android开发
【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
292 7
【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
|
9月前
|
敏捷开发 人工智能 JavaScript
Figma-Low-Code:快速将Figma设计转换为Vue.js应用,支持低代码渲染、数据绑定
Figma-Low-Code 是一个开源项目,能够直接将 Figma 设计转换为 Vue.js 应用程序,减少设计师与开发者之间的交接时间,支持低代码渲染和数据绑定。
582 3
Figma-Low-Code:快速将Figma设计转换为Vue.js应用,支持低代码渲染、数据绑定
|
11月前
|
JavaScript 前端开发 持续交付
构建现代Web应用:Vue.js与Node.js的完美结合
【10月更文挑战第22天】随着互联网技术的快速发展,Web应用已经成为了人们日常生活和工作的重要组成部分。前端技术和后端技术的不断创新,为Web应用的构建提供了更多可能。在本篇文章中,我们将探讨Vue.js和Node.js这两大热门技术如何完美结合,构建现代Web应用。
449 4
|
11月前
|
监控 JavaScript 前端开发
Vue 异步渲染
【10月更文挑战第23天】Vue 异步渲染是提高应用性能和用户体验的重要手段。通过理解异步渲染的原理和优化策略,我们可以更好地利用 Vue 的优势,开发出高效、流畅的前端应用。同时,在实际开发中,要注意数据一致性、性能监控和调试等问题,确保应用的稳定性和可靠性。
|
前端开发 JavaScript
基础 JavaScript 实例
基础 JavaScript 实例
64 1
|
11月前
|
JavaScript 前端开发 开发者
JavaScript框架React vs. Vue:一场性能与易用性的较量
JavaScript框架React vs. Vue:一场性能与易用性的较量
269 0

热门文章

最新文章