Я просто создаю свой первый пользовательский компонент, и я действительно борюсь с основами. Мой компонент:
<template>
<StackLayout>
<Label :text="title" />
<Label :text="slate.description" />
</StackLayout>
</template>
<script>
var slate;
export default {
name: "SlateComponent",
props:
['slate', 'title'],
data() {
return {
slate: slate,
};
},
}
</script>
Этот компонент должен регулярно обновляться и занимать значительную часть домашней страницы приложения:
<template>
<Page class="Page" actionBarHidden="true" backgroundSpanUnderStatusBar="true" >
<StackLayout>
<StackLayout row="0">
...
</StackLayout>
<StackLayout row="1">
<SlateComponent :title="title" :slate="slate" />
</StackLayout>
...
</Page>
</template>
<script>
...
import SlateComponent from "./SlateComponent";
var slateTitle;
var title;
var gameSlates;
var currentSlate;
var slate;
data() {
return {
events: events,
title: title,
slate: slate,
};
},
async created() {
this.gameSlates = await getGameSlates();
this.currentSlate = this.gameSlates[2];
this.title = this.currentSlate.description;
console.info("The title is: " + this.title);
this.slate = this.currentSlate;
}
};
Результат: Независимо от того, что я делаю, ни один объект не передается компоненту.
Если я закомментирую
приложение компилируется и работает нормально, регистрирует currentSlate или его свойство, description
и отображает компонент, включая title
.
Но когда я включаю эту строку, она взрывается с ошибкой: slate
не определено.
(я знаю, что
props:
['slate', 'title'],
неправильно в соответствии с руководством по стилю. Но я не смог заставить работать предпочтительный формат.)
Что мне здесь не хватает?