Как исправить ошибку поиска для dart: html в VSCode? - PullRequest
0 голосов
/ 30 мая 2019

Я пытаюсь запустить в VSCode простую программу dart с импортом 'dart: html';пункт.

 import 'dart:html';
    // import 'package:html/dom.dart';
    // import 'package:html/dom_parsing.dart';
    // import 'package:html/parser.dart';

    void main() async{

    var myTable = new TableElement()
        ..setAttribute('border','1');
        // ..setAttribute(name, value); 
    ...

В режиме Run (я использую расширение VSCode "Code Runner 0.9.9") и в Debug появилась та же ошибка:

Ошибка: не найдена: 'dart:html '
import' dart: html ';

Я установил Dart SDK 2.3.1 в Windows10 и не установил Flutter вообще.PATH указывает на каталог bin Dart SDK PATH = D: \ Dart \ dart-sdk \ bin;

*) В каталоге проекта я пытаюсь добавить дополнительную директиву в зависимости pubspec.yaml:

----
name: main
description: Test App sample22

dependencies:
  html:  
---

После команды "pub get" я увижу, что html присутствует, но ошибка все еще сохраняется.

pub get
Resolving dependencies...
+ charcode 1.1.2
+ csslib 0.16.0
+ html 0.14.0+2
+ path 1.6.2
+ source_span 1.5.5
+ term_glyph 1.1.0
Changed 6 dependencies!

*) Моим следующим шагом был импорт частей html через "package: html /" (помеченный как комментарии в примере кода).Это не помогло, и требуемый класс TableElement все еще неузнаваем.

"main.dart: 8: 19: Ошибка: Метод не найден: 'TableElement'."

*) Я пытаюсь изменить строку "launch.json" с

по умолчанию "program": "bin / main.dart",

на "program": "D: / Dart/WRK03t/main.dart ",

И переименуйте мой файл кода в" main.dart "

*) Также я пытаюсь удалить расширение Dart из VSCode, перезагрузить компьютер и установитьэто снова.это не помогло.

Но позвольте мне сказать, что когда я компилирую main.dart в js

"dart2js -m -o tst.js main.dart"

Приведенный tst.js правильно работает на html-странице.

Почти такая же проблема в запросе Установка Dart не находит dart: html

1 Ответ

0 голосов
/ 10 июня 2019

dart:html доступно только в браузере.Это ошибка, которую вы получите, если попытаетесь запустить код, который использует ее на виртуальной машине (а не в браузере).Это ожидаемо.

Если вам нужно запустить код вне браузера (например, в ВМ как приложение CLI или через Fluter), вы не можете использовать dart:html.Если вы хотите использовать его только в браузере, но VS Code пытается запустить ваш код на виртуальной машине, вам нужно настроить некоторые задачи VS Code / запускать конфигурации для запуска build_runner, аналогично проекту Dart DevTools:

https://github.com/flutter/devtools/tree/master/packages/devtools/.vscode

...