为什么 Svelte 检测不到我的反应数据的变化?

Why does Svelte not detect changes to my reactive data?

我试图在页面上的变量发生变化时更新它,但我在 Svelte 反应性上遗漏了一些东西。有人可以指出哪里不对吗?

REPL

App.svelte

<main>
    <h1>Detect data</h1>
    <p>Board number: {$room_data.board_number}</p>
</main>

<script>
    import {room_data} from './stream.js'
</script>

stream.js

import { writable } from 'svelte/store'

export var room_data = writable({
    board_number: -1,
});

setTimeout(function() {
    room_data.board_number = 7;
    console.log('to');
}, 2000);

您正在此处设置 writable(不是其内容)的 属性:

room_data.board_number = 7;

你可能想做的事:

room_data.set({ board_number: 7 });