如何在 Vuejs 中获取路由的当前名称(例如 'this' 值)?
How to get current name of route(such as 'this' value)in Vuejs?
我是vueJS新手
我想使用以下模板来启动我的项目,我想将其转换为适用于 IE11
Link : 代码笔 erickarbe/pen/pLbRqQ
原代码为:
computed: {
filteredMembers() {
return this.members.filter(member => {
let first = member.First.toLowerCase()
let last = member.Last.toLowerCase()
let fresult = first.includes(this.searchQuery.toLowerCase())
let lresult = last.includes(this.searchQuery.toLowerCase())
if(fresult)
return fresult
if(lresult)
return lresult
})
},
为了与 IE11 一起工作,我尝试使用 polyfill 并将代码转换为
computed: {
filteredMembers: function(){
return this.members.filter(function(member){
let first = member.First.toLowerCase()
let last = member.Last.toLowerCase()
//Error for 'this'
let fresult = first.includes(this.searchQuery.toLowerCase()) //'this' Error
let lresult = last.includes(this.searchQuery.toLowerCase()) //'this' Error
//Error for 'this'
if(fresult)
return fresult
if(lresult)
return lresult
})
},}
我在 this.searchQuery.toLowerCase())
上使用 'this' 时出错
但我可以使用 'var ths = this' 解决它,比如
computed: {
filteredMembers: function(){
var ths = this;
........
let fresult = first.includes(ths.searchQuery.toLowerCase())
let lresult = last.includes(ths.searchQuery.toLowerCase())
获取 'this' 值的方式是硬编码还是愚蠢???
有什么好的方法可以得到当前的'this'值,非常感谢
请阅读 this
关键字在 JavaScript 中的工作原理。
你只需要bind原来的this
到新的功能:
return this.members.filter((function (member) {
// ...
}).bind(this))
函数周围的额外 ()
可能不是必需的,但我不确定没有它 IE11 是否能正常工作。
我是vueJS新手 我想使用以下模板来启动我的项目,我想将其转换为适用于 IE11
Link : 代码笔 erickarbe/pen/pLbRqQ
原代码为:
computed: {
filteredMembers() {
return this.members.filter(member => {
let first = member.First.toLowerCase()
let last = member.Last.toLowerCase()
let fresult = first.includes(this.searchQuery.toLowerCase())
let lresult = last.includes(this.searchQuery.toLowerCase())
if(fresult)
return fresult
if(lresult)
return lresult
})
},
为了与 IE11 一起工作,我尝试使用 polyfill 并将代码转换为
computed: {
filteredMembers: function(){
return this.members.filter(function(member){
let first = member.First.toLowerCase()
let last = member.Last.toLowerCase()
//Error for 'this'
let fresult = first.includes(this.searchQuery.toLowerCase()) //'this' Error
let lresult = last.includes(this.searchQuery.toLowerCase()) //'this' Error
//Error for 'this'
if(fresult)
return fresult
if(lresult)
return lresult
})
},}
我在 this.searchQuery.toLowerCase())
上使用 'this' 时出错但我可以使用 'var ths = this' 解决它,比如
computed: {
filteredMembers: function(){
var ths = this;
........
let fresult = first.includes(ths.searchQuery.toLowerCase())
let lresult = last.includes(ths.searchQuery.toLowerCase())
获取 'this' 值的方式是硬编码还是愚蠢???
有什么好的方法可以得到当前的'this'值,非常感谢
请阅读 this
关键字在 JavaScript 中的工作原理。
你只需要bind原来的this
到新的功能:
return this.members.filter((function (member) {
// ...
}).bind(this))
函数周围的额外 ()
可能不是必需的,但我不确定没有它 IE11 是否能正常工作。