<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>下拉菜单</title>
<script src='http://cdn.jsdelivr.net/vue/1.0.7/vue.min.js'></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue-resource/1.0.3/vue-resource.js"></script>
<style type="text/css">
.gray {
background-color: #ccc;
color: gold;
}
</style>
</head>
<body>
<div id="box">
<input type="text" @keyup='get()' v-model='t1' />
<ul >
<li v-for='value in myData'>{{value}}</li>
</ul>
<p v-show='myData.length === 0'>暂无数据。。。</p>
</div>
<!--https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd=a&json=1&p=3&sid=&req=2&csor=1&cb=jQuery1102005335343900131995_1480232231511&_=1480232231514-->
<script>
new Vue({
el:'body',
data:{
myData:[],
t1:''
},
methods:{
get:function(){
this.$http.jsonp('https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su' , {
wd:this.t1,
},{
json:'cb'
}).then(function(res){
this.myData = res.data.s;
} , function(res){
console.log(res.status);
});
}
}
});
</script>
</body>
</html>
错误是这样的:
su?callback=_jsonpx6o0z3kbkvsubwkyvd0lik9:1 Uncaught TypeError: Cannot read property 'sug' of undefined(anonymous function) @ su?callback=_jsonpx6o0z3kbkvsubwkyvd0lik9:1
vue-resource.js:1276 Uncaught (in promise) SyntaxError: Unexpected token u in JSON at position 0(…)
需要慕课网的vue开发饿了吗实战视频教程的可以私聊我哈.qq1007561607
$http.jsonp 传参的第三个参数 不是{json:'cb'} 而是{jsonp:'cb'}
myGet4: function () {
this.$http.jsonp('https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd='+'x', {
jsonp:'cb'
}).then(function (res) {//callback的名字,默认callback
alert(res.data.s);
}, function (res) {
alert(res.status);
})
}
原来第二个参数的{wd:'cb'}合并到第一个参数的链接后边 就行了,我也不知道为什么
vue-s 的get传参不能跟post一样,中间要加一个params:{wd:xxx} 就可以了。