Написание кода njs с использованием файлов определения TypeScript
- Компиляция файлов определения TypeScript
- Проверка API и автодополнение
- Написание безопасного по типу кода njs
TypeScript — это типизированное надмножество JavaScript, которое компилируется в обычный JavaScript.
TypeScript поддерживает файлы определения, которые содержат информацию о типе существующих библиотек JavaScript. Это позволяет другим программам использовать значения, определенные в файлах, как если бы они были статически типизированными сущностями TypeScript.
njs предоставляет файлы определения TypeScript для своего API, которые можно использовать для:
- Получения автозаполнения и проверки API в редакторе
- Написания безопасного по типу кода njs
Компиляция файлов определения TypeScript
$ git clone https://github.com/nginx/njs $ cd njs && ./configure && make ts $ ls build/ts/ njs_core.d.ts njs_shell.d.ts ngx_http_js_module.d.ts ngx_stream_js_module.d.ts
Проверка API и автодополнение
Поместите файлы *.d.ts в место, где ваш редактор сможет их найти.
test.js:
/// <reference path="ngx_http_js_module.d.ts" />
/**
* @param {NginxHTTPRequest} r
* */
function content_handler(r) {
r.headersOut['content-type'] = 'text/plain';
r.return(200, "Hello");
}
Написание безопасного по типу кода njs
test.ts:
/// <reference path="ngx_http_js_module.d.ts" />
function content_handler(r: NginxHTTPRequest) {
r.headersOut['content-type'] = 'text/plain';
r.return(200, "Hello from TypeScript");
}
Установка TypeScript:
# npm install -g typescript
Компиляция TypeScript:
$ tsc test.ts $ cat test.js
Полученный test.js файл можно использовать напрямую с njs.
© 2002-2021 Igor Sysoev
© 2011-2024 Nginx, Inc.
Licensed under the BSD License.
https://nginx.org/en/docs/njs/typescript.html