Vuejs2 如何在Vue js中从实例外部访问数据?

Vuejs2 如何在Vue js中从实例外部访问数据?,vuejs2,vue-cli,Vuejs2,Vue Cli,我希望从实例外部访问vm数据,如下所示: myComponent.vue export default { data() { return { name: 'Joe' }; } } main.js var vm = new Vue({ el: '#app', render: h => h(myComponent) }); 期望的结果 console.log(vm.name); // should

我希望从实例外部访问vm数据,如下所示:

myComponent.vue

export default {
    data() {
        return {
            name: 'Joe'
        };
    }
}
main.js

var vm = new Vue({
    el: '#app',
    render: h => h(myComponent)
});
期望的结果

console.log(vm.name);   // should return - Joe

由于某些原因,console返回未定义的。我做错了什么?

要从内部访问vue.js对象数据,可以使用$property\u name。范例

var vm=new Vue({
el:“#应用程序”,
数据(){
返回{
名称:“卡布尼”,
}
},
模板:“{name}}”
});
//使用$name.property
log(vm.$data.name);
控制台日志(vm.$el);
//从$method等调用函数…

多亏了ittus的评论,我意识到我必须寻找子组件,而不是根组件

我们可以这样得到子组件:

vm.$children[0].name

其中,$children[0]是根组件的直接(在本例中是第一个)子级。

要添加到上面,如果I console.log(vm),它将返回一个包含所有参数的对象。但是在对象$data:(…)内没有任何数据
vm。name
是根组件的数据,而不是
myApp.vue
component。那么如何从main.js访问myApp.vue组件呢?当前如何导入
myApp.vue
并使用它?在main.js中:从“/myApp”导入myApp;然后在上面的例子中使用它。。。出于某种原因,这对我也不起作用。我使用的是vue cli和webpack,在这种环境中可能会出现一些不同的行为$数据对象不返回任何内容可能会将带有设置的最小项目上载到CodeSandbox,例如,从我的Nuxt+Vue项目中的控制台,我可以访问类似于
应用程序的数据。uuu Vue\uuuu.$root.$data
,其中,
$root
是我的组件名称。谢谢您-我正在通过脚本使用vue,由于某种原因,我在axios catch块中丢失了vue上下文