当前位置: 首页 > 知识库问答 >
问题:

已调用Vue指令,但未更新值

景鸿晖
2023-03-14

下面我的大写指令适用于

<input
  type="text"
  v-model="foo"
  v-uppercase
>

但由于某些原因,它不适用于

<b-form-input
  type="text"
  v-model="foo"
  v-uppercase
></b-form-input>

大写指令:

  directives: {
    uppercase: {
      update: function (el) {
        el.value = el.value.toUpperCase();
      }
    }
  }

我的代码有问题吗?我该怎么修?


共有1个答案

孟新知
2023-03-14

如果您只想更改为大写,最简单的方法是使用样式:

.uppercase{
    text-transform: uppercase;
}

此外,还可以使用另一种选择:

    filters: {
        uppercase: function(v) {
            return v.toUpperCase();
        }
    }

如果你想使用指令,因为你使用v模型有一些问题,所以你可以把它与风格解决方案相结合:

Vue.directive("uppercase", {
    bind(el, binding, vnode) {
        el.style.textTransform = 'uppercase';
    },
    update(el, binding, vnode) {
        el.style.textTransform = 'uppercase';
    }
});

这里是简单的代码为指令显示所有的解决方案

 类似资料:
  • 问题内容: 我已经遵循了有关“选择和角度”的出色教程(链接)(代码几乎相同) 这是我的指令: 这是html: 我想要的是,当用户单击编辑按钮时,弹出模式窗口,并在模式窗口中选择在单击编辑按钮之前选择的类别。 这是控制器的一部分: 我已经记录了 $ scope.selectedCategories ,它们一切都很好,但是由于某种原因,在选择中什么都没有选择。 那么我在做什么错了,我该如何解决呢? 编

  • 我的Redux状态是如何更新的,可以在pokelist.js文件中注销,但是我的状态变量没有设置好,cardList还是一个空数组,我如何正确设置状态?我注销pokelist.js文件中的集合,它首先注销一个空数组,然后是一个包含元素的数组。

  • 1. 简介 本小节我们将介绍在 Vue 项目中常用的一些指令。包括每个指令的含义以及如何使用他们。我们在日常项目中会大量的使用指令,指令是 Vue 中相对基础和简单的知识点。同学们只需要了解每个指令的含义,对案例中的代码反复练习就可以熟练掌握。 2. 慕课解释 指令 (Directives) 是带有 v- 前缀的特殊 attribute。指令 attribute 的值预期是单个 JavaScrip

  • 本文向大家介绍Vue指令指令大全,包括了Vue指令指令大全的使用技巧和注意事项,需要的朋友参考一下 1. v-text v-text主要用来更新textContent,可以等同于JS的text属性。 这两者等价: 2. v-html 双大括号的方式会将数据解释为纯文本,而非HTML。为了输出真正的HTML,可以用v-html指令。它等同于JS的innerHtml属性。 这个div的内容将会替换成属

  • 我正在使用 VUE JS,我想有一组复选框,如下所示。当有人单击主复选框时,应选中该复选框下的所有复选框。请找到附图供您参考 为了实现这个场景,我使用了两个主要组件。当有人单击某个组件时,我将该组件添加到selectedStreams数组。所选流数组结构类似于下面的结构 当我单击标题复选框时,我正在触发功能 单击全部并尝试更改选定的流[keyv]。 但此操作不会触发子组件,并自动选中该复选框。 我

  • 问题内容: 如何更新指令中的作用域? 我的指令: 单击后指令不会更新。 问题答案: 使用方法: