更新 vue js 值

水牛

我想在加载/呈现页面后用实际值异步更新占位符(currentUsername)。

我尝试关注一个示例项目 ( https://github.com/jackfranklin/vue2-demo-proj ),但我无法将它与我的设置相关联。使用 vuejs 2.0。我可以看到事件被触发,进行了调用并返回了一些东西,我的 Chrome 控制台上没有错误,但 UI 中没有任何更新。这是为什么?

1).html文件:

  <script src="assets/js/data.js"></script>

2)data.js:

"use strict";

import * as DataXXX from './data.vue';
Vue.component("dataxxx", DataXXX);

var vm = new Vue({
  el: "#app",
});

3)data.vue

<template>

  <div>
    <p v-if="currentUsername == null">
      Null username
    </p>
    <p v-else>
      Username: {{ currentUsername }}:
    </p>
  </div>

</template>

<script>
  "use strict";

  export default
  {
    created()
    {
      awr.EventsBus.$on("requestLoadData", this.loadData);

      awr.EventsBus.$emit("requestLoadData", this.loadData);
    },

    destroyed()
    {
      awr.EventsBus.$off("requestLoadData", this.loadData);
    },

    methods:
    {
      loadData(name)
      {
        alert("got event");

        this.currentUsername = name;
        this.fetchGithubData(name);
      },

      fetchGithubData(name)
      {
        const url = "http://127.0.0.1/getUsername.php";

        alert("requesting url: " + url);

        fetch(url).then(response => response.text()).then(data => {
          this.currentUsername = data;

          console.log("got response: " + data);
        });
      }
    },
    data() {
        return {
          currentUsername: null
      }
    }
  }

</script>

当您收到响应时,不会重新评估 if,因此页面中不包含占位符。这一行确实更新了它,但只是没有显示:this.currentUsername = data;

将其更改为:

  <div>
  Username: {{ currentUsername }}
  </div

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何更新 vue.js 中的值?

Vue JS - 输入值文本未更新

vue js sync修饰符不会更新输入值

即使可以在Mounted()中记录Vue JS值也未更新

属性值未在子组件Vue.js中更新

在Vue Js中的javascript文件中获取状态的更新值

Vue.js-Vue中的Database中的值更改后,该值未更新或消失

如何更新vue.js v-data-table并使用新文本更新列值

Vue JS-更新索引值不会更新第二个组件的视图

Vue.js-更新的数组项值不会在页面中更新

动态更新值时如何在vue.js中更新文本区域的高度?

更改根组件中的值时,不会更新子组件中的Vue.js props值

Vue插值不更新

使用vue.js更新值时如何添加CSS动画?

Vue.js 3.0-通过组合API更改商店属性值时更新组件UI

vue.js更改值未在输入v模型中更新

如何在vue.js 2上更新输入类型文本中的值?

Vue.js在取消选中复选框后更新值

将值设置为 <li> 标记并更新道具 on:click $event vue.js

Vue.js Datepicker不允许更新输入字段的默认值

如何从Vue应用程序中的main.js文件访问商店getter更新值?

vue.js在另一个值更改时更新值(数据绑定)

更新不相关的Vue.js变量,导致模板中的输入值消失

修改数据后Vue.js输入值未更新

Vue JS中的计算方法未更新更改复选框的值

排序网格仅值而不更新HTML时的vue.js

如何在vue-js中更新v-for="(value,key) in obj"中的值

Vue JS确实更新了scrollTop

使用Vue JS乘以值