测验:应用仓库与插件
每个包的package.json中的backstage.role是做什么的?
- 确定可以查看包的用户角色
- backstage-cli 确定如何构建和测试包
- 确定目录中拥有该包的团队
- 设置上传到 npm 注册表时的访问级别。
新后端系统中的插件和模块有什么区别?
- 插件是付费的,模块是免费的。
- 插件在后端运行,模块在前端运行
- 必须首先注册模块才能显示插件。
- 插件提供完整的功能,模块是插入现有插件扩展点的一块。
为什么我将createRouteRef放在前端插件中名为routes.ts的单独文件中?
- 打破页面组件和插件相互引用时发生的循环导入。
- 这是因为路由引用是在构建时创建的文件,无法手动修改。
- 文件名必须是routes,以便backstage-cli识别路由。
- 这是因为路由引用也必须从后端导入。
如果我在实体页面中添加一个选项卡为EntityLayout.Route,但不在App.tsx中注册路由,会怎么样?
- 构建失败
- 选项卡本身不会出现在屏幕上
- 该选项卡是可见的,但是当我单击它时,会出现空白屏幕,并且不会出现错误消息。
- 所有其他选项卡都会随之消失。
CI中为什么使用yarn install --immutable?
- 这意味着锁定文件不会被修改,从而防止依赖项被静默提升。
- 我使用它是因为安装速度更快并且整体 CI 时间明显减少。
- 纱线需要此标志来识别工作空间结构。
- 使用它是因为它在安装阶段过滤掉具有已知漏洞的软件包。
为什么要在根 package.json 的 workspaces 中加入 plugins/*?
- 这是因为插件会自动注册到目录中。
- 从 git 跟踪中排除插件目录
- 因为只有该路径中的代码被排除在类型检查之外。
- 允许应用程序通过包名称使用内部插件,而无需将它们上传到注册表。
为什么createRoutableExtension中给出的是mountPoint?
- 这是预先压缩组件以减小包大小的设置项目。
- 告知扩展程序将哪个页面附加到路由引用。
- 设置插件使用的后端端点的默认路径。
- 设置附加到实体页面的选项卡的标题和图标。