为什么 Svelte 检测不到我的反应数据的变化?
Why does Svelte not detect changes to my reactive data?
我试图在页面上的变量发生变化时更新它,但我在 Svelte 反应性上遗漏了一些东西。有人可以指出哪里不对吗?
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 });
我试图在页面上的变量发生变化时更新它,但我在 Svelte 反应性上遗漏了一些东西。有人可以指出哪里不对吗?
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 });