Power BI 视觉对象项目结构

  • 版本 :2023.1(当前版本)

Power BI 视觉对象项目结构

开始创建新 Power BI 视觉对象的最佳方式是使用 Power BI 视觉对象 pbiviz 工具。

若要创建新的视觉对象,请导航至想要存储 Power BI 视觉对象的目录,然后运行以下命令:

pbiviz new

运行此命令将创建 Power BI 视觉对象文件夹,其中包含以下文件:

markdown复制

project
├───.vscode
│ ├───launch.json
│ └───settings.json
├───assets
│ └───icon.png
├───node_modules
├───src
│ ├───settings.ts
│ └───visual.ts
├───style
│ └───visual.less
├───capabilities.json
├───package-lock.json
├───package.json
├───pbiviz.json
├───tsconfig.json
└───tslint.json

文件夹和文件说明

此部分介绍了 Power BI 视觉对象“pbiviz”工具所创建目录中的各个文件夹和文件。

.vscode

此文件夹包含 VS code 项目设置。

要配置工作区,请编辑 .vscode/settings.json 文件。

有关详细信息,请参阅用户和工作区设置

资产

此文件夹包含 icon.png 文件。

Power BI 视觉对象工具使用此文件作为 Power BI 可视化效果窗格中的新 Power BI 视觉对象图标。 此图标必须是 PNG 文件,20 × 20 像素。

src

此文件夹包含视觉对象的源代码。

在此文件夹中,Power BI 视觉对象工具会创建以下文件:

  • visual.ts - 视觉对象的主要源代码。 阅读有关视觉对象 API 的信息。

  • settings.ts - 视觉对象设置的代码。 文件中的类提供一个接口,用于定义视觉对象的属性。

样式

此文件夹包含保存视觉对象样式的 visual.less 文件。

capabilities.json

此文件包含视觉对象的主要属性和设置(或功能)。 它允许视觉对象声明支持的功能、对象、属性和数据视图映射。

package-lock.json

对于 npm 修改了 node_modules 树或 package.json 文件的任何操作,将自动生成此文件。

有关此文件的详细信息,请参阅官方 npm-package-lock.json 文档。

package.json

此文件描述了项目包。 它包含有关作者、说明和项目依赖项等项目信息。

有关此文件的详细信息,请参阅官方的 npm-package.json 文档。

pbiviz.json

此文件包含视觉对象元数据。

若要查看 pbiviz.json 文件(包含说明元数据条目的注释)的示例,请参阅元数据条目部分。

tsconfig.json

TypeScript 的配置文件。

此文件必须包含 *.ts 文件的路径,在该文件中,将在 pbiviz.json 文件的 visualClassName 属性中指定视觉对象主类的位置。

tslint.json

此文件包含 TSLint 配置。

元数据条目

pbiviz.json 文件的以下代码描述中的注释描述了元数据条目。 在打包视觉对象之前,需要某些元数据(例如作者的名字和电子邮件)。

备注

  • 从“pbiviz”工具的版本 3.x.x 开始,不再支持 externalJS

  • 为获得本地化支持,将 Power BI 区域设置添加到你的视觉对象。

JSON复制

{  "visual": {
// The visual's internal name. "name": "",

// The visual's display name. "displayName": "",

// The visual's unique ID. "guid": "23D8B823CF134D3AA7CC0A5D63B20B7F",

// The name of the visual's main class. Power BI creates the instance of this class to start using the visual in a Power BI report. "visualClassName": "Visual",

// The visual's version number. "version": "1.0.0",

// The visual's description (optional) "description": "",

// A URL linking to the visual's support page (optional). "supportUrl": "",

// A link to the source code available from GitHub (optional). "gitHubUrl": ""
},
// The version of the Power BI API the visual is using. "apiVersion": "2.6.0",

// The name of the visual's author and email. "author": { "name": "", "email": "" },

// 'icon' holds the path to the icon file in the assets folder; the visual's display icon. "assets": { "icon": "assets/icon.png" },

// Contains the paths for JS libraries used in the visual.
// Note: externalJS' isn't used in the Power BI visuals tool version 3.x.x or higher. "externalJS": null,

// The path to the 'visual.less' style file. "style": "style/visual.less",

// The path to the `capabilities.json` file. "capabilities": "capabilities.json",

// The path to the `dependencies.json` file which contains information about R packages used in R based visuals. "dependencies": null,

// An array of paths to files with localizations. "stringResources": []
}