vue实力踩坑 当前页push当前页无效的解决

vue当前页push当前页无效

当在当前页面中push页面跳转当前页,只是push的参数不同时,只能用字符串拼接,parames和query都不会起作用。不知道为什么。。。

比如说:当前页的url是

 	/invest/myinvest page=1& day=0-30`

但是想点击的时候改变参数,所以就

 	this.$router.push({path:'/invest/myinvest ',query:{page:1,day:'0-30'}})

然而并无卵用。。。。

只能:

 	this.$router.push("/invest/myinvest page="+currentPage+"& day="day);

vue push报错

TypeError: Cannot read property ‘push‘ of undefined

 	axios.post('/processing/', {})
 	         .then(function (response) {
 	         console.log(response.data);
 	         if (response.data == 'no_processing') {
 	             alert("文章分析失败!");
 	             return;
 	         }else if(response.data=='empty_processing'){
 	             alert("文章数据为空,无法分析!")
 	             return;
 	         }
 	         response.data.forEach(function(element){
 	             this.processing_tableData.push(element); //“push”报错
 	             console.log(element);
 	         });
 	         console.log("ok_processing")
 	         })
 	         .catch(function (error) {
 	         console.log(error);
 	         })

报错:

TypeError: Cannot read property ‘push’ of undefined

解决方法

在外部定义一个值指代Vue实例

 	var self = this; //外部定义
 	axios.post('/processing/', {})
 	         .then(function (response) {
 	         console.log(response.data);
 	         if (response.data == 'no_processing') {
 	             alert("文章分析失败!");
 	             return;
 	         }else if(response.data=='empty_processing'){
 	             alert("文章数据为空,无法分析!")
 	             return;
 	         }
 	         response.data.forEach(function(element){
 	             self.processing_tableData.push(element); //把“this”=》“self”
 	             console.log(element);
 	         });
 	         console.log("ok_processing")
 	         })
 	         .catch(function (error) {
 	         console.log(error);
 	         })

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

标签

发表评论