javascript - 将组件导入Vue,然后传递数据
问题描述
我的 Nuxt 项目中有一个组件。
组件/Boxes.vue:
<template>
<b-container>
<b-row>
<b-col v-for="box in boxes" v-bind:key="box">
<b-card
:title="box.title"
class="text-center mt-5">
<p class="card-text">
{{ box.text }}
</p>
<b-button
variant="danger"
>Find out more</b-button>
</b-card>
</b-col>
</b-row>
</b-container>
</template>
<script>
export default {
name: "Boxes",
data() {
return {
}
}
}
</script>
然后我想把它导入 pages/index.vue
<template>
<div id="home">
<b-container>
<b-carousel
id="carousel1"
class="mt-2"
style="text-shadow: 1px 1px 2px #333;"
controls
indicators
background="#ababab"
:interval="4000"
img-width="1024"
img-height="480"
v-model="slide"
@sliding-start="onSlideStart"
@sliding-end="onSlideEnd"
>
<b-carousel-slide img-src="./slides/slide1.jpg"></b-carousel-slide>
<b-carousel-slide img-src="./slides/slide2.jpg"></b-carousel-slide>
<b-carousel-slide img-src="./slides/slide3.jpg"></b-carousel-slide>
<b-carousel-slide img-src="./slides/slide4.jpg"></b-carousel-slide>
</b-carousel>
</b-container>
<Boxes/>
</div>
</template>
<script>
import Boxes from '@/components/Boxes.vue';
export default {
components: {
Boxes
},
data () {
return {
slide: 0,
sliding: null,
boxes: [
{
title: 'Fire Stopping',
text: 'How does it work?'
},
{
title: 'Our Services',
text: 'Full range of firestopping'
},
{
title: 'Bid Request',
text: 'Inexpensive peace of mind'
},
]
}
},
methods: {
onSlideStart (slide) {
this.sliding = true
},
onSlideEnd (slide) {
this.sliding = false
}
}
}
</script>
当我尝试将它加载到 index.vue 文件时,就好像我没有导入它一样。
您会看到它在这里运行,因此您可以更好地理解:https ://codesandbox.io/s/github/perfectimprints/precisionfirestopping.com 。
Vue 抱怨组件没有定义,但是在渲染时注册了。
解决方案
您缺少将boxes
道具传递给您的组件:
<Boxes :boxes="boxes" />
在组件内部,您应该添加props:['boxes']
如下:
<script>
export default {
name: "Boxes",
props:['boxes'],
data() {}
}
</script>
检查此代码
您可以在这些doc1和doc2中了解props
以及如何将数据从父组件传递到子组件
推荐阅读
- c# - 使用 Entity Framework Core 和脚手架处理“动态外键列”
- sql - 在数据库表中查找最大的非现值
- java - 如果项目来自 json String,RecyclerView 不会显示项目
- python - Python unittest 使用可能未提供的可选默认参数模拟函数
- sql-server - Sql Server - 与具有更多记录的表连接和分组
- laravel - 在 Laravel 7 中找不到文件异常
- python - 如何在python中更有效地编写while循环?
- python - 如何使用 tfx / tfdv / tensorflow 服务在推理期间验证数据?
- python - 为什么四元数乘法的输出结果是错误的?
- javascript - 根据其他两个值之间的特定比较来更改两个值?