非同期リクエスト時の待ち受けメッセージを表示する

前提

本、これからはじめるvue.js3実践入門を勉強してます。本ではコンポーネントがローカル登録になっていないのでローカル登録に直してます。

実現したいこと

これからはじめるvue.js3実践入門p.191、『非同期リクエスト時の待ち受けメッセージを表示する』
suspense使わない
ローカル登録に変更

発生している問題・エラーメッセージ

何も表示されずコンソールには以下が表示されました。

SyntaxError: Unexpected token '.'. Expected a ':' following the property name 'Vue'.

該当のソースコード

html

<!DOCTYPE html><html lang="ja"><head><meta charset="UTF-8" /><title>Vue.js</title></head><body><div id="app"> <my-heavy /></div><script src="https://cdn.jsdelivr.net/npm/vue@3.2.29/dist/vue.global.js"></script><script src="suspense_obj.js"></script></body></html>

javascript

const MyHeavy={ Vue.defineAsyncComponent({ loader() { return new Promise((resolve, reject) => { setTimeout(() => { resolve({ data() { return { name: 'Suspense' }; }, template: `<div>お待たせしました。{{ name }}です!</div>` }); }, 5000); }) }, loadingComponent: { template: `Now Loading...` }, delay: 500, errorComponent: { template: `Loading Error!!` }, timeout: 7000, suspensible: false })}; Vue.createApp({ components:{ 'my-heavy':MyHeavy }}).mount('#app');

試したこと

本の通りにjavascriptを変更したら正しく実行されたのでjavascriptの問題だと思います。

補足情報(FW/ツールのバージョンなど)

vue3.2.29

コメントを投稿

0 コメント