svelte - Svelte - 在点击处理程序中更改绑定值似乎不会更新它
问题描述
我有一个使用 Svelte 绑定输入的简单演示应用程序。这可行,但是在同一元素上的单击处理程序期间,我希望重置绑定值。
具体来说,我已绑定input
到draftMessage
并希望draftMessage
在提交消息后设置回空字符串:
<script>
let draftMessage = '';
let handleSendMessageClick = function(event){
var message = event.target.form.querySelector('input').value
previousMessages.push(message)
previousMessages = previousMessages
// Clear draftMessage
console.log(`Clearing draftMessage - why doesn't this work?`)
draftMessage = ''
}
let previousMessages = [];
</script>
<h1>Type some things</h1>
<form>
<input value={draftMessage}/>
<button on:click|preventDefault={handleSendMessageClick}>Send</button>
</form>
{#each previousMessages as message}
<p>{message}</p>
{/each}
这里有一个现场演示
如何更改单击处理程序中的绑定值?
解决方案
推荐阅读
- java - 为什么覆盖父类方法并在子类中添加 throws 语句会在 java 中生成编译时错误
- html - 如何合并这两个 css 文件以使样式完美运行?
- python - python id() 函数的补充?
- java - 如何使用 BIWEEKLY 为谷歌事件发送提醒电子邮件
- excel - 当单元格具有生成空白或值的现有格式时,无法为单元格设置格式规则以填充白色
- python - Pandas 通过从列表中返回匹配字符串的行来创建一个新的数据框,该列表与另一个数据框的 1 列中的单元格进行检查
- python - 使用 auto-upgrade-helper 升级时出现 git 错误
- google-maps - Xamarin.Forms.GoogleMaps 从 ViewModel 绑定 MoveToRegion
- android - Sentry-android 自签名 SSL 证书 (SSLPeerUnverifiedException)
- c++ - 您如何正确使用 /GUARD:CF MSVC 标志?