nuxt js从服务器端访问组件数据

时间:2020-08-28 08:25:18

标签: nuxt.js server-side-rendering

有什么方法可以从服务器端访问组件数据或道具吗?

我有带有模板的测试组件的测试应用

<template>
<div>
  <h1>TEST PAGE</h1>
  <p>counter : {{counter}}</p>
</div>
</template>

在asyncData()中,我启动一个计时器

asyncData(context)
{
  console.log('in server process')
    console.log(context)
    let timerId = setInterval(() => {

     ..... some logic
    }, 4000);
    return {counter : 15};
  },
}

所以问题,如何在模板中动态更改计数器值?由于某种原因,我需要在服务器端执行此操作 谢谢!

2 个答案:

答案 0 :(得分:2)

asyncData方法运行得更早,并且在加载页面之前仅运行一次。它是在组件初始化之前执行的。

参考Nuxt LifecycleasyncData

解决方案

您可以watch属性并发送异步请求(使用axios / fetch之类的库),以使服务器知道并在服务器上进行处理。

答案 1 :(得分:1)

我认为您应该在AsyncData生命周期内对后端进行API调用。您可以参考此Nuxt example here

const output = await dbConn.callProcedurePromisified(sp, req.data)

Returning a Promise