【发布时间】:2020-05-04 22:33:27
【问题描述】:
我正在AlpineJS 中制作一个小待办事项应用程序,当用户单击 待办事项时,我遇到了自动选择 字段的问题。仅当有多个待办事项时才会出现此问题。
当用户在应用程序中输入第一个待办事项时,他们可以点击该待办事项进行编辑。该字段将按预期自动选择。但是,当用户在应用中添加多个待办事项并想要编辑 n+1 个待办事项时,该字段将不再自动选择,但第一个待办事项仍然可以自动选择。
这是我的CodePen 供您参考。
这是我的 edit 功能的样子:
JS
[...]
edit(todo) {
todo.editing = !todo.editing
this.$nextTick(() => {
document.getElementById(`edit-${todo.id}`).select()
})
}
[...]
HTML
[...]
<div
x-text="todo.item"
class="todo-item"
@click="edit(todo)" // <-- point of interest
x-show="!todo.editing"
:class="{ 'completed' : todo.completed }"
>
</div>
<input
type="text"
x-show="todo.editing"
:value="todo.item"
x-model="todo.item"
@keydown.enter="edit(todo)"
@keydown.escape="todo.editing = false"
@click.away="todo.editing = false"
class="edit-input"
:id="`edit-${todo.id}`" // <-- point of interest
/>
[...]
有人知道我的逻辑可能有什么问题吗?感谢您的帮助!
【问题讨论】:
标签: alpine.js