Spec-Zone.ru › Deno 2

deno init, начать новый проект

Использование командной строки

deno init [OPTIONS] [DIRECTORY OR PACKAGE]...

создаёт базовый проект Deno с файлами скрипта, теста и конфигурации


Параметры

--lib

Создаёт примерный проект библиотеки.

--npm

Создаёт проект npm create-*.

--serve

Создаёт примерный проект для deno serve.

Примеры

$ deno init
✅ Project initialized
Run these commands to get started

  // Run the program
  deno run main.ts

  // Run the program and watch for file changes
  deno task dev

  // Run the tests
  deno test

$ deno run main.ts
Add 2 + 3 = 5

$ deno test
Check file:///dev/main_test.ts
running 1 test from main_test.ts
addTest ... ok (6ms)

ok | 1 passed | 0 failed (29ms)

Подкоманда init создаст два файла (main.ts и main_test.ts). Эти файлы предоставляют базовый пример того, как написать программу Deno и как написать для неё тесты. Файл main.ts экспортирует функцию add, которая складывает два числа, а файл main_test.ts содержит тест для этой функции.

Вы также можете указать аргумент для deno init для инициализации проекта в определённом каталоге:

$ deno init my_deno_project
✅ Project initialized

Run these commands to get started

  cd my_deno_project

  // Run the program
  deno run main.ts

  // Run the program and watch for file changes
  deno task dev

  // Run the tests
  deno test

Инициализация пакета JSR

Выполнив deno init --lib, Deno создаст проект, готовый к публикации на JSR.

$ deno init --lib
✅ Project initialized

Run these commands to get started

  # Run the tests
  deno test

  # Run the tests and watch for file changes
  deno task dev

  # Publish to JSR (dry run)
  deno publish --dry-run

Внутри deno.json вы увидите, что записи для name, exports и version заполнены по умолчанию.

{
  "name": "my-lib",
  "version": "0.1.0",
  "exports": "./mod.ts",
  "tasks": {
    "dev": "deno test --watch mod.ts"
  },
  "imports": {
    "@std/assert": "jsr:@std/assert@1"
  }
}

Инициализация веб-сервера

Выполнение deno init --serve создаёт веб-сервер, работающий с deno serve.

$ deno init --serve
✅ Project initialized

Run these commands to get started

  # Run the server
  deno serve -R main.ts

  # Run the server and watch for file changes
  deno task dev

  # Run the tests
  deno -R test

Ваш файл deno.json будет выглядеть так:

{
  "tasks": {
    "dev": "deno serve --watch -R main.ts"
  },
  "imports": {
    "@std/assert": "jsr:@std/assert@1",
    "@std/http": "jsr:@std/http@1"
  }
}

Теперь вы можете запустить свой веб-сервер, который отслеживает изменения, выполнив deno task dev.

$ deno task dev
Task dev deno serve --watch -R main.ts
Watcher Process started.
deno serve: Listening on http://0.0.0.0:8000/

Генерация проекта библиотеки

Вы можете добавить флаг --lib для добавления дополнительных параметров в ваш deno.json, таких как "name", "version" и "exports".

$ deno init my_deno_project --lib
✅ Project initialized

Получившийся `deno.json` будет следующим:

{
  "name": "my_deno_project",
  "version": "0.1.0",
  "exports": "./mod.ts",
  "tasks": {
    "dev": "deno test --watch mod.ts"
  },
  "license": "MIT",
  "imports": {
    "@std/assert": "jsr:@std/assert@1"
  }
}

© 2018–2024 the Deno authors
Licensed under the MIT License.
https://docs.deno.com/runtime/reference/cli/init

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API