我正在用VueJs和wagtail创建一个博客网站。我正在Json中获取页面和图像数据。我需要将数据显示为
描述:Lorem Ipsum只是印刷和排版行业的伪文本。自15世纪以来,Lorem Ipsum一直是该行业的标准伪文本,当时一位不知名的印刷商拿走了一个打字盘,并将其搅乱以制作一本打字样本书。它不仅保存了五个世纪,而且还跨越了电子排版,基本上没有改变。20世纪60年代,随着包含Lorem Ipsum段落的Letraset表格的发布,以及最近Aldus PageMaker等桌面出版软件(包括Lorem Ipsum版本)的发布,它开始流行起来。
IMG:有事.jpg
描述:Lorem Ipsum只是印刷和排版行业的伪文本。自15世纪以来,Lorem Ipsum一直是该行业的标准伪文本,当时一位不知名的印刷商拿走了一个打字盘,并将其搅乱以制作一本打字样本书。它不仅保存了五个世纪,而且还跨越了电子排版,基本上没有改变。20世纪60年代,随着包含Lorem Ipsum段落的Letraset表格的发布,以及最近Aldus PageMaker等桌面出版软件(包括Lorem Ipsum版本)的发布,它开始流行起来。
IMG:有事.jpg
我该怎么做?这是我的密码。在我的代码中,我无法正确显示
<template>
<div class="app">
<div>
<b-card-group deck v-for="item in results" :key="item.id">
<b-card
border-variant="primary"
>
<b-card-text>
<div v-for="block in item.body" :key="block.id">
<div v-if="block.type == 'heading'">
<h2>{{block.value}}</h2>
</div>
<div v-for="image in images" :key="image.id">
<div v-if="block.type == 'image'">
<img :src="'http://127.0.0.1:8000' + image.meta.download_url" alt="">
</div>
<!-- <img :src="'http://127.0.0.1:8000/' + block.value"> -->
</div>
<div v-if="block.type == 'paragraph'">
<h2 v-html="block.value">{{block.value}}</h2>
</div>
</div>
</b-card-text>
</b-card>
</b-card-group>
</div>
</div>
</template>
<script>
// @ is an alias to /src
import axios from 'axios'
export default {
name: 'Home',
data () {
return {
results: null,
image_path: null,
tags: null,
title: null,
images: null
}
},
mounted () {
axios.get('http://127.0.0.1:8000/api/v2/pages/?type=news.NewsPage&fields=intro,body,image_thumbnail')
.then((response) => {
this.results = response.data.items
})
.catch((error) => (
console.log(error)
))
},
created () {
axios.get('http://127.0.0.1:8000/api/v2/images/')
.then((response) => {
this.images = response.data.items
})
.catch((error) => (
console.log(error)
))
}
}
</script>
<style scoped>
.app{
width: 80%;
margin: 0 auto;
}
.card{
border: 2px solid black;
}
p{
font-size: 16px;
font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
}
h2{
font-weight: 300;
font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
font-size: 14px;
}
</style>
我认为您对这段代码有两个问题:
1) 您正在加载已创建并挂载的 ajax 数据。图像未链接到数据,
2) 您还需要对缩进进行排序,因为我认为您的div没有按照您的意愿对齐。请注意,在图像中,您正在循环使用从ajax加载的this.images属性。然而,这些图像不是来自你正在迭代的外部对象吗?还是你打算在每次迭代博客项目时重复相同的图像集?