javascript - VueJS 组件数据不更新

标签 javascript vue.js

几个小时以来我一直遇到 VueJS 的问题,需要帮助。

我有一个带有 HTML 字符串的变量。我想通过 JS 操作这个字符串。这样就在某个单元格中绘制了一个徽章。 但是任何更改都不会被接管。我不知道为什么。

<template>
  ...
  <div class="html-wrapper" id="file">
     <div v-html="htmlCode"></div>
  </div>
</template>

<script>
  ...
  methods: {
    redrawBadges() {
          var vmThis = this;
          this.scripts.forEach(s => {
            if(s.target != '')
              if(document.getElementById(s.target) != null) {
                let badge = s.html;
                let idIndex = vmThis.htmlCode.indexOf('id="'+ s.target +'"');
                let tdEnd = vmThis.htmlCode.indexOf('>', idIndex);
                vmThis.htmlCode = vmThis.htmlCode.splice(tdEnd + 1, 0, badge);
                console.log(vmThis.htmlCode.slice(0));
              }
          });
    }
  },
  ...
</sciprt>

控制台输出正确的字符串。但是,组件不显示它。即使使用 Vue DevTools,我也看不到字符串已更改。

最佳答案

使用 Vue.set(object, propertyName, value)

这会帮助你。

关于javascript - VueJS 组件数据不更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58813383/

相关文章:

javascript - 如何在循环函数中解析 Promise

javascript - JQuery 自动填充表格行并选择相应的文本?

javascript - 没有模型更改的 Angular 2 组件模型刷新 View

javascript - 如何在 vue.js 中的嵌套 v-for 循环中访问元素的 ref 索引?

javascript - Vue.js 如何公开组件数据属性以供第三方脚本使用?

Firebase + Vue : Disconnected at refresh despite setting persistence

javascript - 如何在js中实现去抖动

javascript - 无法访问 Requirejs 模块内的另一个类

javascript - 如何防止在 javascript 中打开剑道网格编辑器弹出窗口

javascript - 方法在单元测试中不可用