@ fluidframework/devtools (英语)
这个库包含开发者工具,与流体框架一起使用. 它用来为我们的联系人提供动力 浏览器扩展。 。 。 .
使用 Fluid 框架库
对于依赖流体框架库的公共API,我们建议 ^ (caret)版本范围.
例如,使用 ^1.3.4。 。 。 .
依赖不稳定的API,例如: beta API,我们推荐一个更具限制性的版本范围.
例如,使用一个 ~ 版本范围.
安装
运行此命令以安装软件包 :
npm i @fluidframework/devtools -D
从此软件包导入
此软件包使用 packet.json 导出 通过支持级别将API分离. 有关支助保障的信息改为: API 支持级别。 。 。 .
导入 public API 从 @fluidframework/devtools。 。 。 .
导入 beta API 从 @fluidframework/devtools/beta。 。 。 .
导入 alpha API 从 @fluidframework/devtools/alpha。 。 。 .
API 文档
读取 @ fluidframework/devtools (英语) API 文档 https://fluidframework.com/docs/apis/devtools (中文(简体) )。 。 。 .
使用量
Devtools的API表面被设计得与大多数应用流相适应.
初始化
要初始化您的容器的 devtools 会话, 请打电话 initializeDevtools。 。 。 .
此函数接受 a DevtoolsLogger 用于接收应用程序中的流体遥测, 初始流体列表
Containers 和(可选择的)可视化定制数据可视化配置
Container 数据.
关于 DevtoolsLogger
这个 DevtoolsLogger 调用时是可选的部件 initializeDevtools 但强烈建议您使用
因为Fluid Devtools中的几个特性 是由Fluid框架生成的遥测电源 和这个
记录器是这种遥测技术 进入流体地道的方法.
你可以得到一个 DevtoolsLogger 然后把它传给 initializeDevtools 财务报告和审定财务报表
您的应用程序.
这样日志将接收您应用程序中流体框架生成的所有遥测数据,并将其转发至
流水地道具为所需要.
例如,当使用 AzureClient API 你会做这样的事情(注意: devtoolsLogger 被通过
改为 initializeDevtools() 财务报告和审定财务报表 改为 new AzureClient():
import { createDevtoolsLogger, initializeDevtools } from "@fluidframework/devtools";
// Instantiate the logger
const devtoolsLogger = createDevtoolsLogger();
// Pass the logger when instantiating the AzureClient
const clientProps = {
connection: { ... }, // Your application's configuration to connect to the Fluid service
logger: devtoolsLogger,
};
const client = new AzureClient(clientProps);
// Use the AzureClient to create a Container
const containerSchema = { /* Define the objects in your Fluid Container */ };
const { container, services } = await client.createContainer(containerSchema)
// Initialize the Devtools passing the logger and your Container.
// The Container could be added later as well with devtools.registerContainerDevtools().
const devtools = initializeDevtools({
logger: devtoolsLogger,
initialContainers: [
{
container,
containerKey: "My Container",
},
],
});
如果你不合作的话 AzureClient 但带有下级API(例如,您手动即时 a) Loader 从
@ fluidframework/ 容器装入器包 软件包,您可能想要引用
页:1 @ fluidframework/devtools-core 软件包 而不是这个).
在本地开发期间,建议您应收到申请 DevtoolsLogger 实例 换成
用于在实际环境部署时通常会得到的任何伐木机,以避免当地开发活动来自
与真实的遥测相混合.
如果您仍然想要提供真实的应用程序日志并使用由遥测驱动的 Fluid Devtools 特性
同时,您可以将已有的日志传递给 DevtoolsLogger 构造器和它会推进所有遥测
它也收到该日志:
import { createDevtoolsLogger } from "@fluidframework/devtools";
// Your application's logger
const yourApplicationLogger = getInstanceOfYourApplicationLogger();
const devtoolsLogger = createDevtoolsLogger(yourApplicationLogger);
// Pass devtoolsLogger to initializeDevtools() and to your application as described above
清理
Devtools对象作为全局单子管理.
该单通在窗口"卸载"事件前自动被清理.
所以典型的应用流可能不需要担心清理.
也就是说,如果你想更严格地控制 当Devtools被撕毁, 你可以简单地叫它 dispose 返回手柄上的方法 初始化。 。 。 .
协助制定一揽子计划
构建
要在当地构建软件包,首先确保您已运行 pnpm install 从一相相相根起.
接下来,要构建代码,运行 npm run build 从单雷波根起,或使用 流体构造 通过 fluid-build -t build。 。 。 .
- 注意: 一旦您从根运行了一个构建, 假设本软件包之外没有其它更改, 您可以运行
npm run build直接在此目录中以更快的构建 . 如果您修改了此套件的本地依赖性, 您需要从根重运行一个构建, 然后再直接从此套件内重建 .
测试
要进行测试,首先确保您遵循 构建 步骤.
下一个,运行 npm run test 从此目录中的终端.
客户最低要求
Fluid框架客户端库支持此文档中的平台. 这些要求有意具有限制性. 在一个主要的版本系列中,我们可以放松这些要求,但我们不能使其更严格. 对于长期支持(LTS)版本,我们可能需要支持这些平台几年.
其他配置可以奏效,但Fluid框架不支持. 如果一个不支持的配置停止工作, 我们不会将此归类为错误 . 要请求支持未列出的配置, 请存档 . 产品组会评估你的要求. 在此问题上,请具体说明配置的现状:
- 配置有效但需要官方支持.
- 配置不起作用,需要更改.
支持的运行时间
- Fluid框架支持节点.js版本22和24同时收到 上游支助。 。 。 .
- 流体框架将停止支持第22版 当上游支持于2027-04-30结束时。 。 。 .
- 流体框架不支持节点.js与
--no-experimental-fetch旗帜.
- Fluid框架支持支持ES2022标准库的现代浏览器.
支持的工具
- 类型脚本 6.0数字 :
- 流体框架支持全部
strict选项. - 设定建设目标(
lib, (中文(简体) ),target改为:ES2022或后会. - 启用
strictNullChecks。 。 。 . - 流体框架不支持 在 TypeScript 6.0 中贬值的配置选项。 。 。 .
- 流体框架不完全支持
exactOptionalPropertyTypes。 。 。 . 如果您启用此选项, 请不要使用in, (中文(简体) ),Reflect.has, (中文(简体) ),Object.hasOwn,或Object.prototype.hasOwnProperty改为Fluid框架类型的窄成员. 这些方法可以错误地排除undefined从可能的值.
- 流体框架支持全部
- 网络软件包 页:1
- 我们不需要一个特定的捆绑者. 其他处理ES模块的捆绑机可以工作,但我们只积极测试网页包.
模块分辨率
在类型脚本中 compilerOptions,使用时 Node16, (中文(简体) ), Node20, (中文(简体) ), NodeNext,或 Bundler 模块分辨率.
这些设置遵循 节点.js v12+无害环境管理 分辨率和加载算法。 。 。 .
不使用 Node10 模块分辨率.
模块格式
- ES模块: 使用ES模块来消耗Fluid框架客户端软件包,包括在Node.js中.
- 常见JS : Fluid Framework在3.0版本或后期不正式支持CommonJS.
贡献准则
你们可以 贡献 通过这些方式实现流体框架:
详细指示改为: repo 文档。 。 。 .
本项目遵循 Microsoft 开源行为守则。 。 。 . 更多信息,改为: 《行为守则》经常被问到的问题。 。 。 . 问题或评论,联系 打开码@ microsoft.com。 。 。 .
这个项目可能包含微软项目的商标或标志,产品,或服务. 这些商标或标志的使用必须遵循微软 商标和品牌准则。 。 。 . 在这个项目的修改后版本中使用微软商标或标志不得造成混淆或暗示微软赞助.
帮助
读取 流体框架文件 用于了解流体框架概念和API.
要求提供文件未载列的资料, 创建问题。 。 。 .
商标
这个项目可能包含微软项目的商标或标志,产品,或服务.
这些商标或标志的使用必须遵循微软的 商标和品牌准则。 。 。 .
在这个项目的修改后版本中使用微软商标或标志不得造成混淆或暗示微软赞助.