可以实现跳转到devstar

This commit is contained in:
2025-11-10 11:51:55 +00:00
parent 24df60ca16
commit 6e8b0c0544
2 changed files with 29 additions and 10 deletions

BIN
assets/images/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

View File

@@ -65,7 +65,6 @@ export default class DSHome {
vscode.ViewColumn.One,
{
enableScripts: true,
enableForms: true,
retainContextWhenHidden: true,
}
);
@@ -163,6 +162,22 @@ export default class DSHome {
case 'showErrorNotification':
await utils.showErrorNotification(data.message);
break;
case 'openExternalUrl':
// 修复:直接从 message 中获取 url而不是从 data
const url = message.url || (data && data.url);
if (url) {
try {
await vscode.env.openExternal(vscode.Uri.parse(url));
vscode.window.showInformationMessage(`已在浏览器中打开: ${url}`);
} catch (error) {
vscode.window.showErrorMessage(`打开链接失败: ${url}`);
console.error('打开外部链接失败:', error);
}
} else {
console.error('openExternalUrl: url is undefined', message);
vscode.window.showErrorMessage('打开链接失败: 链接地址无效');
}
break;
}
}
},
@@ -243,12 +258,6 @@ export default class DSHome {
<li class="feature-item" onclick="handleMainAction()" id="mainActionButton">
主要功能
</li>
<li class="feature-item" onclick="vscodePostMessage('showInformationNotification', {message: '功能2点击'})">
功能 2
</li>
<li class="feature-item" onclick="vscodePostMessage('showInformationNotification', {message: '功能3点击'})">
功能 3
</li>
</ul>
<script>
@@ -328,16 +337,26 @@ export default class DSHome {
}
}
// 处理主要功能点击
// 处理主要功能点击 - 修复消息发送格式
function handleMainAction() {
if (isLoggedIn) {
// 已登录跳转到本地80端口
vscodePostMessage('showInformationNotification', {message: '跳转到本地服务 http://localhost:80'});
window.open('http://localhost:80', '_blank');
// 修复:直接发送包含 url 的消息
vscode.postMessage({
command: 'openExternalUrl',
need_return: false,
url: 'http://localhost:80'
});
} else {
// 未登录:跳转到 DevStar 官网
vscodePostMessage('showInformationNotification', {message: '跳转到 DevStar 官网'});
window.open('https://devstar.cn', '_blank');
// 修复:直接发送包含 url 的消息
vscode.postMessage({
command: 'openExternalUrl',
need_return: false,
url: 'https://devstar.cn'
});
}
}