Я пытаюсь сделать пример "Привет, мир" с помощью d3, просто чтобы посмотреть, смогу ли я использовать библиотеку. Для этого я скопировал этот ultraminimialisti c пример в пример vscodes webview.
Это дало мне следующий код:
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const vscode = require("vscode");
const d3 = require("d3");
function activate(context) {
// Create and show a new webview
const panel = vscode.window.createWebviewPanel('catCoding', // Identifies the type of the webview. Used internally
'Cat Coding', // Title of the panel displayed to the user
vscode.ViewColumn.One, // Editor column to show the new webview panel in.
{} // Webview options. More on these later.
);
panel.webview.html = getWebviewContent();
d3.select(panel.document).append("span").text("Hello, world!");
context.subscriptions.push(vscode.commands.registerCommand('catCoding.start', () => {
}));
}
exports.activate = activate;
function getWebviewContent() {
return `<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Cat Coding</title>
</head>
<body>
<script src="//d3js.org/d3.v3.min.js"></script>
<script>
d3.select("body").append("span")
.text("Hello, world!");
</script>
</body>
</html>`;
}
// this method is called when your extension is deactivated
function deactivate() { }
exports.deactivate = deactivate;
//# sourceMappingURL=extension.js.map
Я ожидал увидеть Привет, мир, как в примере, но вместо этого я вижу:
Предупреждающих сообщений нет, все проблемы, консоли вывода и отладки в порядке и даже chrome dev console сообщает об отсутствии ошибок. Я застрял.
Здесь есть две разные попытки использования d3, оба они терпят неудачу, одна использует JS напрямую, другая использует HTML.