+
 新版

关于vue的一些问题请教各位巨佬

刘索隆 发布于 2019/07/18 13:01
阅读 675
收藏 0

最近在自学vue,碰见个问题在这请教下各位。

<div>

    <ul v-html="ulNavBar"></ul>

</div>

export default {
  name: 'NavBar',
  data () {
    return {
      ulNavBar: ''
    }
  },
  created () {
    var that = this;
    $.ajax({
      type: "post",
      data: {},
      url: this.GLOBAL.baseURL,
      dataType: "json",
      success: function(data){
        for(var i in data){
          html+='<li>';
          html+='<router-link to="/">首页</router-link>';
          html+='</li>';
        }
        that.ulNavBar=html;
      }
    })
  }
}

若上代码,本意是像用ajax请求获得菜单数据,然后展示在这,做路由是用到<router-link to="/">,但是按照上面的方法router-link并没有起作用是怎么回事

加载中
0
刘索隆
刘索隆

参考官方文档,目前修改成如下这样解决了问题:

<li v-for="item in navList" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-173">
    <router-link v-bind:to="item.menuUrl" v-text="item.menuName"></router-link>
</li>
export default {
  name: 'NavBar',
  data () {
    return {
      navList:[]
    }
  },
  created () {
    var that = this;
    $.ajax({
      type: "post",
      data: {},
      url: this.GLOBAL.baseURL+,
      dataType: "json",
      success: function(data){
        that.navList=data;
      }
    })
  }
}
0
l
luohuanyu11

v-html 不再支持 vue 的相关语法,只支持原生的html 语法

0
Ken大神
Ken大神

还保留着 jQuery的 思想哈

刘索隆
刘索隆
根深蒂固
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部