如何使用 feather js 更新 html 文档?
How to update html document using feather js?
我有一个服务,我每 5 秒调用一次来自 postgres table 的 return 数据,现在我希望这些数据显示在 html 文档
app.js
const stats=app.service('test_view');
// console.log(stats);
function getstats(){
stats.find().then(response=>{
console.log('data is ',response.data)});};
setInterval(function() {
getstats();
}, 5000);
// console.log(stats);
stats.html
<!DOCTYPE html>
<html>
<head>
<title>Stats</title>
<script type="text/javascript" src="app.js"></script>
</head>
<body>
<div id='stats'>
</div>
</body>
</html>
一切 运行 都很好,我在控制台中得到结果,我正在使用 feather.js 现在我希望这些结果显示在 html.Please 的 div 标签中在这方面帮助我。
这是一个工作示例,说明当您从远程调用取回数据时如何更改 div 的内容。
// Simulate your remote call... ignore this part.
const stats = {}
stats.find = () => new Promise((resolve, reject) => resolve({
data: 'here is some data ' + new Date().toLocaleTimeString('en-US')
}));
// Div you want to change.
const resultsDiv = document.getElementById('stats');
// Get the data
function getstats () {
stats.find().then(response => {
console.log('data is ', response.data);
// Update the contents of the div with your data.
resultsDiv.innerHTML = response.data;
});
}
setInterval(function() {
getstats();
}, 1000);
<html>
<head>
<title>Stats</title>
<script type="text/javascript" src="app.js"></script>
</head>
<body>
<div id='stats'>
</div>
</body>
</html>
您需要在浏览器中调用羽毛服务。您可以通过多种不同的方式执行此操作(如 REST 调用、使用 feathers 客户端等)。
<html lang="en">
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/core-js/2.1.4/core.min.js"></script>
<script src="//unpkg.com/@feathersjs/client@4.0.0-pre.3/dist/feathers.js"></script>
<script src="//unpkg.com/axios/dist/axios.min.js"></script>
<script>
// @feathersjs/client is exposed as the `feathers` global.
const app = feathers();
app.configure(feathers.rest('http://localhost:3000').axios(axios));
app.service('test_view').find();
})
.then(data => {
// do something with data
});
</script>
</head>
<body></body>
</html>
这在很大程度上取决于您用于前端实现的内容(如果有的话)。这将使用 axios for REST 设置最小 feathersjs/client,无需身份验证,并调用您的服务(在端口 3000 上)并获取有效负载。
每 5 秒执行一次此操作超出了羽毛的范围,取决于您构建 Web 应用程序的方式。
我有一个服务,我每 5 秒调用一次来自 postgres table 的 return 数据,现在我希望这些数据显示在 html 文档
app.js
const stats=app.service('test_view');
// console.log(stats);
function getstats(){
stats.find().then(response=>{
console.log('data is ',response.data)});};
setInterval(function() {
getstats();
}, 5000);
// console.log(stats);
stats.html
<!DOCTYPE html>
<html>
<head>
<title>Stats</title>
<script type="text/javascript" src="app.js"></script>
</head>
<body>
<div id='stats'>
</div>
</body>
</html>
一切 运行 都很好,我在控制台中得到结果,我正在使用 feather.js 现在我希望这些结果显示在 html.Please 的 div 标签中在这方面帮助我。
这是一个工作示例,说明当您从远程调用取回数据时如何更改 div 的内容。
// Simulate your remote call... ignore this part.
const stats = {}
stats.find = () => new Promise((resolve, reject) => resolve({
data: 'here is some data ' + new Date().toLocaleTimeString('en-US')
}));
// Div you want to change.
const resultsDiv = document.getElementById('stats');
// Get the data
function getstats () {
stats.find().then(response => {
console.log('data is ', response.data);
// Update the contents of the div with your data.
resultsDiv.innerHTML = response.data;
});
}
setInterval(function() {
getstats();
}, 1000);
<html>
<head>
<title>Stats</title>
<script type="text/javascript" src="app.js"></script>
</head>
<body>
<div id='stats'>
</div>
</body>
</html>
您需要在浏览器中调用羽毛服务。您可以通过多种不同的方式执行此操作(如 REST 调用、使用 feathers 客户端等)。
<html lang="en">
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/core-js/2.1.4/core.min.js"></script>
<script src="//unpkg.com/@feathersjs/client@4.0.0-pre.3/dist/feathers.js"></script>
<script src="//unpkg.com/axios/dist/axios.min.js"></script>
<script>
// @feathersjs/client is exposed as the `feathers` global.
const app = feathers();
app.configure(feathers.rest('http://localhost:3000').axios(axios));
app.service('test_view').find();
})
.then(data => {
// do something with data
});
</script>
</head>
<body></body>
</html>
这在很大程度上取决于您用于前端实现的内容(如果有的话)。这将使用 axios for REST 设置最小 feathersjs/client,无需身份验证,并调用您的服务(在端口 3000 上)并获取有效负载。
每 5 秒执行一次此操作超出了羽毛的范围,取决于您构建 Web 应用程序的方式。