Visual Studio Code Browser Preview 项目教程
1、项目的目录结构及介绍
Visual Studio Code Browser Preview 项目的目录结构如下:
vscode-browser-preview/
├── .github/
│ └── ISSUE_TEMPLATE/
├── assets/
├── dist/
├── scripts/
├── src/
│ ├── client/
│ ├── server/
│ └── extension.ts
├── .gitignore
├── .vscodeignore
├── CHANGELOG.md
├── LICENSE
├── README.md
├── package.json
└── tsconfig.json
目录结构介绍
- .github/: 包含 GitHub 相关配置文件,如 Issue 模板。
- assets/: 存放项目所需的静态资源文件。
- dist/: 编译后的输出目录。
- scripts/: 包含项目构建和部署的脚本文件。
- src/: 源代码目录,包含客户端和服务器端的代码。
- client/: 客户端代码。
- server/: 服务器端代码。
- extension.ts: 扩展的主入口文件。
- .gitignore: Git 忽略文件配置。
- .vscodeignore: VS Code 忽略文件配置。
- CHANGELOG.md: 项目更新日志。
- LICENSE: 项目许可证。
- README.md: 项目说明文档。
- package.json: 项目依赖和脚本配置。
- tsconfig.json: TypeScript 配置文件。
2、项目的启动文件介绍
项目的启动文件是 src/extension.ts
,它是扩展的主入口文件。该文件负责初始化扩展并注册命令。
import * as vscode from 'vscode';
import { BrowserPreview } from './client/BrowserPreview';
export function activate(context: vscode.ExtensionContext) {
const browserPreview = new BrowserPreview(context);
context.subscriptions.push(browserPreview);
}
export function deactivate() {
// 清理资源
}
启动文件介绍
- activate 函数: 当扩展被激活时调用,初始化 BrowserPreview 实例并注册到上下文中。
- deactivate 函数: 当扩展被停用时调用,进行资源清理。
3、项目的配置文件介绍
项目的配置文件主要是 package.json
和 tsconfig.json
。
package.json
package.json
文件包含了项目的依赖、脚本和扩展配置信息。
{
"name": "vscode-browser-preview",
"displayName": "Browser Preview",
"description": "A real browser preview inside your editor that you can debug.",
"version": "0.7.0",
"publisher": "auchenberg",
"engines": {
"vscode": "^1.30.0"
},
"categories": [
"Other"
],
"activationEvents": [
"onCommand:browser-preview.openPreview"
],
"main": "./dist/extension",
"contributes": {
"commands": [
{
"command": "browser-preview.openPreview",
"title": "Open Browser Preview"
}
]
},
"scripts": {
"vscode:prepublish": "npm run compile",
"compile": "tsc -p ./",
"watch": "tsc -watch -p ./",
"postinstall": "node ./node_modules/vscode/bin/install",
"test": "npm run compile && node ./node_modules/vscode/bin/test"
},
"devDependencies": {
"typescript": "^3.3.1",
"vscode": "^1.1.28",
"tslint": "^5.12.1",
"@types/node": "^10.12.21",
"@types/mocha": "^2.2.42"
}
}
tsconfig.json
tsconfig.json
文件是 TypeScript 的配置文件,定义了编译选项。
{
"compilerOptions": {
"module": "commonjs",
"target": "es6",
"