为什么输入文本进去后0/200的0没有变动
时间: 2023-12-07 07:06:11 浏览: 97
非常抱歉,我之前的代码有误。在计算属性中,我应该返回计算出的总字数,而不是将其赋值给 `totalWords` 变量。
以下是修正后的示例代码:
```vue
<template>
<div>
<textarea v-model="inputText" @input="updateTotalWords"></textarea>
<p>{{ totalWords }}/200</p>
</div>
</template>
<script>
export default {
data() {
return {
inputText: '',
totalWords: 0
};
},
methods: {
updateTotalWords() {
this.totalWords = this.inputText.length;
if (this.totalWords > 200) {
this.inputText = this.inputText.slice(0, 200);
this.totalWords = 200;
}
}
}
};
</script>
```
在上述代码中,我添加了一个 `updateTotalWords` 方法,并将其绑定到 textarea 的 `input` 事件上。当用户输入文本时,该方法会更新 `totalWords` 变量的值,并检查是否超过 200 字的限制。如果超过,则使用 `slice()` 方法将文本内容截断为前 200 个字符,并将 `totalWords` 设置为 200。
现在,当用户输入文本时,你会在页面上看到实时更新的总字数,并且超过 200 字时文本会被截断。
阅读全文