javascript - 如何在 JavaScript 中从外部 vue 应用程序调用自定义 Vue 3 方法?
问题描述
我有一个用 Vue 编写的简单应用程序。我想要的只是在 Vue.createApp() 方法之外从 Vue 调用一个自定义方法。
我的代码:
const app = Vue.createApp({
data() {
return {
data: ["this","is","an", "example"],
}
},
methods: {
getData() {
return this.data;
},
},
});
app.mount('#app');
// This instruction fails!
console.log(app.getData());
当我尝试在最后一行执行该方法时,我进入控制台:
Uncaught TypeError: Cannot read property 'content' of undefined
为什么我不能执行该方法?怎么了?
解决方案
对于具体问题:
为什么我不能执行该方法?
原因是您调用的是应用程序实例上的方法,而不是定义函数的组件。第一个参数createApp
是根组件。
要获取根组件,请使用:
const app = Vue.createApp({ /* root component's data, methods, etc */ });
const root = app.mount("#app");
// component methods accessible on return value from mount()
console.log(root.getData());
推荐阅读
- selenium - 如何通过整个网站验证并获得所有 href="javascript:void(0)" 的响应,而不仅仅是使用 selenium 的单页
- r - 编织到 PDF 时,RStudio 不会显示 Unicode 字符
- javascript - jQuery遍历可排序的树结构
- unit-testing - 如何在读取响应正文时强制出错
- android - 从列表视图中单击按钮时,如何传递项目的索引?
- php - 问号和等号未显示在 wordpress post_name 中
- sumologic - 如何停止 Sumo Logic 警报
- android - 我应该使用带有 back4app 的数据库吗
- php - Google 人员/Google 通讯录 API 失败
- apache-nifi - 使用 Oracle 时 Nifi ExecuteSql 非常慢