javascript - 变量更新时 x-text 不起作用

标签 javascript alpine.js

我最近刚刚尝试了 Alpine.js,但我认为它太复杂或者我错过了理解它

这是我的代码:

<div x-data="wordcount()" class="wordcount-container">
<p x-text="wc"> </p>
</div>
<textarea id="writing" @keyup="wordcount().updateWordCount()" ></textarea>

    let wordcount_writing = 0;
    function wordcount(){
        return {
            wc: wordcount_writing,
            updateWordCount(){
                this.wc = document.getElementById("writing").value.length;
                wordcount_writing = this.wc;
            }
        }
    }

当我通过控制台日志在 textarea 上打字时,我尝试检查 wordcount_writing 变量,它工作正常,但 x-text 不行

最佳答案

使用 Alpine.js 的数据模型,您无需执行任何操作即可获取文本长度。您可以定义模型数据writing,将其绑定(bind)到textarea x-model ,然后你可以通过writing.length访问它的长度。该变量是 react 性的,因此您不必手动更新长度。

<script defer src="https://cdn.jsdelivr.net/npm/<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="640508140d0a010e1724574a1c4a1c" rel="noreferrer noopener nofollow">[email protected]</a>/dist/cdn.min.js"></script>

<div x-data="{ writing: '' }">
  <p x-text="`Text length: ${writing.length}`"></p>
  <textarea x-model="writing"></textarea>
</div>

关于javascript - 变量更新时 x-text 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76145379/

相关文章:

laravel - 未捕获( promise )TypeError : initialData is null - my components are wrapped in a single div but still getting the error

javascript - 从 Javascript 中的日期字符串中获取确切的日期

php - 尝试在 WordPress 中使用 DFP 广告管理系统定位 - 需要有关问题的建议 -

javascript - Chart.js 和 PHP

javascript - Rails 中的 Turbolinks 与使用 javascript 的 Alpine JS 下拉列表和 Hubspot 表单冲突

asp.net-core-mvc - 在ASP.NET Core MVC项目中配置Alpinejs

alpine.js - 识别 alpine.js for 循环中的最后一项

javascript - 如何使复选框始终处于选中状态?

javascript - 选择合适的 HTML 元素

javascript - 如何使用jquery选择具有属性和属性不等于特定值的元素?