我有一个调用函数内的SQL查询的API请求。我试图将结果传递给.vue页面。 (使用快速-VUE)这里是API请求如何将结果从db查询传递给Vue?
router.get('/search', (req, res, next) => {
var keyword = ("%" + req.query.keyword + "%")
var lat = req.query.lat
var lng = req.query.lng
console.log(keyword, lat, lng)
connection.query('SELECT *, (3959 * acos (cos (radians(?))* cos(radians(lat))* cos(radians(lng) - radians(?))+ sin (radians(?))* sin(radians(lat)))) AS distance FROM job_posting where job_title like ? HAVING distance < 25', [
lat, lng, lat, keyword
], function(err, rows) {
})
res.render('main', {
// data: {
// results
// },
vue: {
meta: {
title: 'Page Title',
},
components: ['myheader', 'myfooter', 'searchform', , 'results']
}
});
})
和Main.vue页
<template>
<div id="wrap">
<div class="col-md-1"></div>
<div id="main-container" class="container col-md-10">
<myheader></myheader>
<div class="col-md-4"></div>
<div class="col-md-4">
<searchform></searchform>
<results></results>
</div>
<div class="col-md-4 text-center">
</div>
<div class="col-md-1"></div>
</div>
</div>
</template>
进出口试图将数据传递到该组件results.vue
<template>
<p>Display data</p>
</template>
<script>
export default {
data: function() {
return {
// dogs: 3
}
}
}
</script>
<style lang="css">
</style>
如何将“行”数据传递到results.vue页面?
这里是如何将数据从DB
[ RowDataPacket {
id: 1,
job_title: 'Software Engineer',
job_desc: '<p>Ayo</p>',
location: 'Akron, OH',
job_type: 'Full-Time',
salary: '',
date_created: 2016-11-23T05:00:00.000Z,
short_desc: '[email protected]',
apply_url: 'Ayo',
lat: '41.084821',
lng: '-81.515607',
distance: 0 },
RowDataPacket {
id: 2,
job_title: 'Software Engineer',
job_desc: '<p>Ayo</p>',
location: 'Akron, OH',
job_type: 'Full-Time',
salary: '',
date_created: 2016-11-23T05:00:00.000Z,
short_desc: '[email protected]',
apply_url: 'Ayo',
lat: '41.084821',
lng: '-81.515607',
distance: 0 },
RowDataPacket {
id: 3,
job_title: 'Software Engineer',
job_desc: '<p>Ayo</p>',
location: 'Akron, OH',
job_type: 'Full-Time',
salary: '',
date_created: 2016-11-23T05:00:00.000Z,
short_desc: '[email protected]',
apply_url: 'Ayo',
lat: '41.084821',
lng: '-81.515607',
distance: 0 } ]
看起来像你有一个Main.vue,它有一个Results.vue组件。通常使用道具将数据从父组件传递给子组件。所以它应该像 ,其中的结果是Main.vue上的一个数据属性(它看起来像你注释掉的)。您还需要将回调内部的渲染移动到@johnnynotsolucky的答案中。 –
Bert