MongoDB数据库:
// 精选新闻列表数据
const selectNews = new mongoose.Schema({
type: { type: String },
image: { type: String },
title: { type: String },
content: { type: String },
time: { type: String },
label: { type: String }
})
controller函数:
exports.dbselectNewsData = async (req, res) => {
try {
const result = await dbselectNews(req.query)
if (result.length > 0) {
res.send({ code: 200, msg: '获取成功', data: result })
} else {
res.send({ code: 803, msg: '获取失败' })
}
} catch {
res.send({ code: 803, msg: '获取失败' })
}
}
node二级路由:
router.get('/selectNew', dbselectNewsData)
前端axios请求get:
// 根据精选新闻头部导航获取数据
export function getSelectNews(type: string) {
return service.get(`/news/selectNew?type=${type}`)
}
.vue组件的代码:
// TODO 获取的新闻列表数据
const getLeftNewslistData = (type = '精选新闻') => {
getSelectNews(type).then((res: any) => {
if (res.code == 200) {
leftNewslist.value = res.data
}
})
}
getLeftNewslistData()
watch(type, (newVal: any) => { //监听头部菜单的数据变化
console.log(newVal, 111111)
getLeftNewslistData(newVal)
})