Описание тега node-addon-api

NoneNode-addon-api - это оболочка C++ для N-API, стабильной библиотеки ABI для создания надстроек для Node.js.
0 ответов

Как использовать AsyncContext узла-аддона-API в асинхронном режиме

Документы для AsyncContext есть этот пример (только слегка измененный, но все еще работающий), который работает синхронно: #include "napi.h" void MakeCallbackWithAsyncContext(const Napi::CallbackInfo& info) { Napi::Function callback = info[0].As…
0 ответов

node-addon-api передает объект другого класса в качестве аргумента функции обратного вызова

Как передать объект другого класса в качестве параметра функции обратного вызова в node-addon-api? Фрагмент кода: #include <napi.h> #include "Third_Party_Library.h" using namespace Napi; class WorkerInit : public AsyncWorker { public: WorkerIn…
01 мар '19 в 08:33
0 ответов

Как обеспечить статические функции библиотеки C с помощью node-gyp?

Я пытаюсь скомпилировать node_module через node-gyp и node-addon-api. Компиляция не имеет ошибок, но я не могу выставить функции из статической библиотеки. (Так же, как конечный файл узла меньше, чем статическая библиотека abc.a) binding.gyp { "targ…
27 фев '19 в 13:21
1 ответ

Как мне вернуть тип BigInt из C++ в javascript, используя N-API?

Я использую этот https://github.com/nodejs/node-addon-api/blob/master/doc/bigint.md документ в качестве ссылки для возврата bigint из C++, но получаю следующую ошибку: error: ‘BigInt’ in namespace ‘Napi’ does not name a type Napi::BigInt HelloWrappe…
26 фев '19 в 05:36
0 ответов

Можно ли отладить аддон узла C++ в электронном приложении с помощью обычного отладчика (gdb, lldb и т. Д.)?

Я пытаюсь отладить надстройку узла, которая вызывается в электронном приложении, но я не могу найти способ запустить или подключить отладчик c к приложению. У меня был успех в отладке, когда он вызывался простым приложением узла, вызывая узел при за…
17 фев '19 в 11:16
0 ответов

Связать два объектных файла и разрешить символы в этих файлах

Я хотел бы создать file-12.o связав / загрузив два файла, file-1.o а также file-2.o так что ссылки на функции в file-1.o это может быть решено с помощью символов в file-2.o разрешены, но оставлены другие символы для разрешения при последующей загруз…
17 май '19 в 00:42
1 ответ

Вызов функции JS несколько раз из аддона узла

Редактировать: по-видимому, это не ясно, думаю, я сделаю это более кратким. Приложение Node построено, использует родной аддон. Мне нужно передать функцию Javascript из этого проекта через node-addon-api в мой аддон C++. Затем мне нужно иметь возмож…
14 мар '19 в 00:13
0 ответов

Приложение Electron зависает, пока не завершится вся функция обратного вызова NAPI

У меня есть кнопка в Javascript, которая передает функцию, которая изменяет пользовательский интерфейс моего модуля NAPI, который будет использовать ее несколько раз в течение долгого времени выполнения задачи. Базовая настройка: Javascript: let $ =…
21 мар '19 в 21:52
0 ответов

node-addon-api Вызов js Метод объекта не выполнен

Я передаю объект javascript в код C++, код C++ вызывает метод этого объекта "readdata1", но второй метод объекта (readdata2) не вызван; консоль говорит мне, что readdata2 не определена; JS код: const testfunc = require('./index').testfunc; class rea…
04 апр '19 в 08:46
0 ответов

Есть ли способ отправить параметры с моей предопределенной функцией napi_threadsafe_function?

У меня есть приложение Electron, я создал аддон, используя napi, и у меня есть функция javascript, которая обновляет пользовательский интерфейс на основе строкового входного параметра. В аддоне я беру JS-функцию update UI и создаю для нее поточную ф…
15 апр '19 в 19:28
0 ответов

Статическое связывание библиотек ffmpeg с собственным дополнением к узлу C++

Я пытаюсь запустить аддон узла, который ссылается на библиотеки без необходимости включать их динамическую библиотеку.dll: Когда я пытаюсь включить их статический архив: расширение.dll.a в Windows, аддон узла возвращает ошибку: $ node index.js --cli…
16 май '19 в 01:48
0 ответов

Napi::ObjectWrap: называется деструктор и как?

Я создаю аддон для node.js благодаря node-addon-api. Каждый из моих "традиционных" классов C++ оборачивает объект C. Затем мои классы Napi::ObjectWrap обертывают эти объекты C++. my_object -> MyObject -> Napi::ObjectWrap<MyObjectWrapper>…
25 апр '19 в 15:06
0 ответов

Заполнение HTML-тега select из вызова функции C++ addon

Я просто не уверен, как подойти к этому. У меня есть пустой тег выбора в моем HTML с JS, обрабатывающим события клика. Затем я создал аддон, который строит некоторые объекты из других источников, каждый из которых содержит уникальную идентифицирующу…
1 ответ

Как избежать перестройки узла-гипа при запуске установки пряжи?

Когда я бегу yarn installМое родное дополнение всегда перестраивается. Видно, что команда node-gyp rebuild запускается вместо node-gyp build, даже если ничего не обновляется. caros@ubuntu:~/Developer/xviz-converter$ yarn install yarn install v1.16.0…
20 июн '19 в 09:52
0 ответов

Как создать замыкание с помощью N-API?

Я хочу создать такой декоратор от Js. С помощью скалярных типов (число, строка...) я конвертирую их в типы C++, поэтому проблем нет. Как насчет других типов, таких как объект, функция и массив? Я обнаружил, что аргумент void* data может быть передан…
02 июл '19 в 10:46
0 ответов

Async ждут в родном модуле

Я изучаю, как использовать node-addon-api, и теперь я застрял в управлении async/await. Я не могу понять, как обрабатывать случай, когда нативная функция получает объект, который имеет асинхронную функцию. Javascript: const addon = require('bindings…
07 июл '19 в 11:49
0 ответов

Проблема построения узла-serialport с помощью nw-gyp (win10 64bit)

Сначала я попробовал node-pre-gyp node-pre-gyp build --runtime=node-webkit --target=0.39.3 и он просит меня настроить NW-GYP: nw-gyp configure --target=0.39.3 И настроить метание ошибок: gyp не удалось с кодом выхода: 1 Я установил python 2.7, --pr…
2 ответа

Совместная библиотека модуля Node C++

Я пытаюсь создать модуль Node C++ для взаимодействия с API Steam. Файл библиотеки находится в./steam/lib/linux64/libsteam_api.so, а файлы заголовков находятся в./steam. Я создал небольшой обычный файл C++ для тестирования, который успешно использует…
0 ответов

Собственный модуль NAPI в C++ выполняется частично (включен std::thread)

Мой собственный модуль Node-js, написанный с использованием NAPI, выполняется частично.Я использовал несколько потоков в нем и для отладки я использую обычный "std::cout".Иногда при запуске модуля он печатает, что поток запущен, а иногда - нет.И в л…
1 ответ

Как заставить Visual Studio найти файл заголовка при открытии папки

Visual Studio 2019 не обнаруживает napi.hесли я не использую относительные пути при открытии проекта npm в качестве папки. Файл находится в node_modules/node-addon-api/napi.h, Как я могу заставить VS найти этот заголовок? Есть Additional include dir…