vue ssr

1、安装
	npm install vue vue-server-renderer --save
	
2、引入
	const Vue = require('vue')

3、创建实例
	const app = new Vue({
	  data:{参数键值对}
	  template: `反引号内书写html内容,用法和正常使用vue一样`,
	  methods:{...},
	  生命周期(){...}
	})

4、将 Vue 实例渲染为 HTML,如果没有传入回调函数,则会返回 Promise:
	renderer.renderToString(app).then(html => {
	
	  console.log(html)
	  
	}).catch(err => {
	
	  console.error(err)
	  
	})

5、通过服务器返回
	app.get('/',(req,res)=>{
		进行3步,
		
		renderer.renderToString(app).then(err, html) => {
		    if (err) {
		      res.status(500).end('Internal Server Error')
		      return
		    }
		    
		    res.writeHead(200,{"Content-Type":'text/html,charset=utf8'})
		    
		    res.end(`
		      <!DOCTYPE html>
		      <html lang="en">
		        <head><title>Hello</title></head>
		        
		        html参数即为Vue实例中的模板
		        <body>${html}</body>
		        
		      </html>
		    `)
		  })
		  
6、通过导入html文件渲染

	const renderer = require('vue-server-renderer').createRenderer({
	  template: require('fs').readFileSync('./x.html', 'utf-8')
	})
	
	renderer.renderToString(app, (err, html) => {
	 	...
	})
	
	给html文件传入参数
		const context = {参数键值对}
		renderer.renderToString(app, context, (err, html) => {
			...
		})
	html文件使用参数
		{{键名}}     解析html标签
		{{{键名}}}	三花括号不解析html标签
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值