vue.js - 如何将全局对象 App 作为属性导入嵌套组件?
问题描述
我尝试从 webpack 在 VueJs 上构建单页应用程序。我有一个全局应用程序,我想在其中存储一些数据(整个应用程序的全局变量)。我想在嵌套组件的任何地方访问 App 全局对象(属性和方法)。
我试图将全局 App 设置为局部变量 app
import Block from "./Block";
import App from "../../App";
export default {
name: 'Gallery',
components: {Block},
extends: Block,
props: {
block: Object
},
data() {
return {
title: "Gallery",
app: App,
editMode: false
}
},
methods: {
addPicture: function () {
this.app.state.selectedBlock = this.block.id;
this.app.state.showFilesStorage = true;
},
},
computed: {}
}
然后我调用我看到的 addPicture() 方法
TypeError: Cannot set property 'selectedBlock' of undefined
但是 App 有这个属性。我也想像这样从任何嵌套组件访问 App 方法的调用方法
this.app.getBlocks();
解决方案
推荐阅读
- python - 在 Python 中将 html 表转换为图像(其他解决方案不起作用)
- html - 我有一个数据表,但不是在操作列上显示两个按钮,而是显示 HTML 代码,所以问题出在哪里
- c++ - return 语句如何在递归中工作?
- asp.net - 能否使用 ITfoxtec SAML 2.0 继续登录 Azure 中的示例项目?
- java - 我无法将图像和字体加载到我的包中(Java)
- sql-server - 使用 Typeorm 连接到 Nestjs 中的 mssql,但 Nest 无法解析 EmployeeRepository 的依赖关系
- java - 一旦范围已经存在,如何显示错误?
- sql - 查询以列格式获取多行数据 - postgresql
- css - CSS如何在垂直线上绘制箭头
- jupyter-notebook - 如何修复:Jupyter PDF 导出 PNG(在降价中)包含失败