Vue.jsと初心者として、私はこのようになりますコンポーネントがあります。「?スコープが未定義」警告です
<template>
<div>
<a href="{{ data.uk_store_link }}">
{{ data.title }} - {{ data.artist.name }}
</a>
</div>
</template>
<script>
export default {
props: ['data']
}
</script>
を 『data.artist.name』に存在し、正しいですデータ小道具に渡されるオブジェクトしかし、どのように私は、ネストされたアーティスト名についてポップアップ表示の警告を取り除くことができます
[Vue warn]: Error when evaluating expression "data.artist.name": TypeError: scope.data.artist is undefined (found in component: <release>)
ETA:?ああ、申し訳ありません、はい、表示するために参考にされているだろう「データ」:
{ "id": 23182, "title": "Music from 'Likely Stories'", "uk_store_link": " http://store.roughtraderecords.com/...html ", "artist": { "id": 1176, "name": "Jarvis Cocker" } }
簡潔にするためにいくつかのフィールドを削除しましたが、これはdata.artist.nameが実際に存在することを示していることをうまく示しています。警告にもかかわらず、確実にページに正常に出力されます。
可能であれば、完全な「データ」を共有してください。 – C2486
おそらくdata.artistが存在しないためです。親のコンポーネントを使用する場合、データプロパティを my-component>のようなデータにバインドする必要があり、そのアルバムは{title: 'my world' 、artist:{name: 'justin bieber'}} –
vbranden
私はデータを出力として{{data | json}}。それはdata.artist.nameが存在しないことではないと思います。 – thesunneversets