Я пишу проект Kotlin / JS (узел).
У меня есть файл Javascript с именем jsFile.js, который содержит функцию с именем javascriptFunction()
.
У меня есть файл Kotlinназывается Main.kt, с которого я хочу позвонить javascriptFunction()
.
Я читаю онлайн и в других сообщениях о переполнении стека, что вы можете вызвать функцию, выполнив что-то вроде:
Main.kt:
external fun require(module:String):dynamic
fun main() {
var moduleJS = require("jsFile")
moduleJS.javascriptFunction()
}
jsFile. js:
module.exports.javascriptFunction = function() {
//code
}
Однако, похоже, что только функции, которые находятся в папке node_modules (библиотеки, установленные с npm), могут быть доступны с помощью external
. Поэтому, если я перемещаю jsFile.js в node_modules, это работает. Если я храню его в своей папке src, это не сработает.
Хранение jsFile.js внутри node_modules кажется очень хакерским, поскольку это не библиотека npm. Есть ли еще что-нибудь, что я мог бы сделать по этому поводу? Спасибо