关于vue的一些问题请教各位巨佬? 400 报错
最近在自学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并没有起作用是怎么回事
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
思路清奇,让我眼前一亮######大佬别嘲笑######
既然有for为什么不用v-for?html是哪里来的?你的这个路由是首页还是不是?所有的都跳转到首页貌似没有意义吧?
最后,你用v-html渲染出来的是vue的命令的字符串,是不会被转化成实际的html的,当然不会起作用。你看你最后页面上li里面的是router-link标签,这个只在.vue中才有意义。
######目前还对这东西不是很了解,刚才参考官方文档改成下面的样子,已经实现了,现在这设计有什么问题,因为刚学,虽然实现,但是符不符合规范或者怎么样的######参考官方文档,目前修改成如下这样解决了问题:
<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;
}
})
}
}######
v-html 不再支持 vue 的相关语法,只支持原生的html 语法
######还保留着 jQuery的 思想哈
######根深蒂固