Vuejs2 如何在Vue中从组件中的函数传递变量?
如何在Vue中从组件中的函数传递变量? 这是我的代码:Vuejs2 如何在Vue中从组件中的函数传递变量?,vuejs2,vue-component,vue.js,Vuejs2,Vue Component,Vue.js,如何在Vue中从组件中的函数传递变量? 这是我的代码: export default { name: 'app', data: function () { return{ city1: '', city2: '', metr: 0 } }, created () { ymaps.ready(init); function ini
export default {
name: 'app',
data: function () {
return{
city1: '',
city2: '',
metr: 0
}
},
created () {
ymaps.ready(init);
function init() {
$data.city1 = 'sdf'; // ?this to data of component?
由于您创建了一个新函数,因此函数中的
this
将不会指向Vue组件,而是指向函数本身的this
您可以使用或保存此的引用,然后再使用它
created() {
const self = this;
ymaps.init(init);
function init() {
self.city1 = 'sdf';
}
}
或(更好):
由于您创建了一个新函数,因此函数中的
this
将不会指向Vue组件,而是指向函数本身的this
您可以使用或保存此的引用,然后再使用它
created() {
const self = this;
ymaps.init(init);
function init() {
self.city1 = 'sdf';
}
}
或(更好):
可能是
this.city1='sdf'
。不,它不起作用。我将函数init()
替换为方法,在那里this.city1='sdf'
工作。我看到有人这样做:$data.city1
,但我记不清到底是什么,大卫是对的。访问或设置Vue中变量的正确方法是直接访问此.field
(在本例中为.city1)。您可以将数据引用为this.$options.data
。。为什么要买呢?可能是this.city1='sdf'
。不,它不起作用。我将函数init()
替换为方法,在那里this.city1='sdf'
工作。我看到有人这样做:$data.city1
,但我记不清到底是什么,大卫是对的。访问或设置Vue中变量的正确方法是直接访问此.field
(在本例中为.city1)。您可以将数据引用为this.$options.data
。。你为什么要买?