Tag: JavaScript

Swift to JavaScript transpiler – 可能吗?

作为一个在Swift中编写的iOS开发人员,我发现越来越烦恼不得不将编写在Swift中的相同代码与使用JavaScript编码的前端开发人员协调起来。 在一个地方实现通用的功能,然后翻译成JS,会更加简单。 我开始怀疑Swift to JS编译器是否可行? 也许不共享完整的代码,但至少有一些通用的通用功能。 我在网上找到这个transpiler: SwiftJS 。 可悲的是,这个并没有真正削减它。 以下代码: let a = [1, 2] print(a.count) 在演示中返回Invalid Swift code 。 没有灌输信心。 不要介意像可选项或函数重载那样更复杂的位。 我想知道启动一个转播器项目,但后来我意识到有很多陷阱。 例如这个代码: var a = [1, 2] var b = a b.append(3) 应该等于[1, 2]而b等于[1, 2, 3] 。 在JavaScript中,两者都是[1, 2, 3]因为它们是通过引用而不是按值传递的。 是否可以写一个适当的翻译?

将postgresql查询结果返回给一个函数

我现在正在使用expressjs,kotlin和PostgreSQL来开发Web API。 我以面向对象的方式组织我的项目。 我还创建了一个数据库类,使所有经常被调用的查询作为一个函数。 例: fun addUser(firstName: String, lastName: String, password: String, classId: Int){ client.query("INSERT INTO users(first_name, last_name, password, class_id) values($1, $2, $3, $4)", arrayOf(firstName, lastName, password, classId)); } 这不起作用,但是当我试图发出一个SELECT查询并返回数据集的函数调用者,因为查询是异步的。 我已经尝试将结果赋值给数据库对象的一个​​属性,并在赋值后立即使用它,但是当我永久检查它的值时,似乎该值不能被赋值。 有谁知道我可以如何返回值的函数调用者? 预先感谢您的答案。

ReferenceError:ok没有在Kotlin Javascript的QUnitAsserter.assertTrue中定义

Kotlin版本1.0.x-1.1.0支持使用QUnit的单元测试,但是当我加载测试时,它会引发这个异常: ReferenceError: ok is not defined at QUnitAsserter.assertTrue_4mavae$ (file:///D:/neoranga/Mis%20documentos/GitHub/FibonacciCounter/app/build/classes/test/lib/kotlin-test-js.js:50:5) at assertTrue (file:///D:/neoranga/Mis%20documentos/GitHub/FibonacciCounter/app/build/classes/test/lib/kotlin-test-js.js:93:27) at QUnitAsserter.assertTrue_o10pc4$ (file:///D:/neoranga/Mis%20documentos/GitHub/FibonacciCounter/app/build/classes/test/lib/kotlin-test-js.js:47:5) at QUnitAsserter.Asserter.assertEquals_lzc6tz$ (file:///D:/neoranga/Mis%20documentos/GitHub/FibonacciCounter/app/build/classes/test/lib/kotlin-test-js.js:182:10) at assertEquals (file:///D:/neoranga/Mis%20documentos/GitHub/FibonacciCounter/app/build/classes/test/lib/kotlin-test-js.js:108:20) at AppTest.myFirstTest (file:///D:/neoranga/Mis%20documentos/GitHub/FibonacciCounter/app/build/classes/test/app_test.js:17:5) at Object.<anonymous> (file:///D:/neoranga/Mis%20documentos/GitHub/FibonacciCounter/app/build/classes/test/app_test.js:29:21) 这是我的测试课: import org.junit.Test import kotlin.test.assertEquals class AppTest { @Test fun myFirstTest() { assertEquals(1, 1, "Test in test folder works") } } 这是加载测试的html代码: <!doctype html> <html lang="en"> <head> <meta […]

如何在Firebase中创建多个孩子

我正在开发一个需要以特定方式将数据发送到Firebase的项目: var ref = firebase.database().ref('Codes').child(firebaseUser.uid).child(className); 但是,我不能使用这段代码发送数据。 我如何通过两个孩子的位置发送数据。

Java库生成JavaScript代码

我需要从Java程序内部生成JavaScript(ECMAScript)代码。 为此,我正在寻找类似JavaPoet的东西,但是生成JavaScript作为输出。 我不能使用其中一种将另一种语言翻译成JavaScript的转译器(例如,GWT不是答案),也不能使用从语法树生成JavaScript的工具(只有当存在帮助构建该语法树的库时)。 类似已经提到的JavaPoet就是答案,因为它在内存使用和代码大小方面都有很小的占用空间。 如果这是相关的,那么生成的JavaScript代码的目标是Java / JSR 223(Nashorn)。 指定要求:JavaPoet使用此代码 MethodSpec main = MethodSpec.methodBuilder("main") .addModifiers(Modifier.PUBLIC, Modifier.STATIC) .returns(void.class) .addParameter(String[].class, "args") .addStatement("$T.out.println($S)", System.class, "Hello, JavaPoet!") .build(); TypeSpec helloWorld = TypeSpec.classBuilder("HelloWorld") .addModifiers(Modifier.PUBLIC, Modifier.FINAL) .addMethod(main) .build(); JavaFile javaFile = JavaFile.builder("com.example.helloworld", helloWorld) .build(); javaFile.writeTo(System.out); 创建这个Java代码 package com.example.helloworld; public final class HelloWorld { public static void main(String[] args) { System.out.println("Hello, JavaPoet!"); } […]

是否有可能使用Maven开发前端/ Web应用程序?

我曾与Gulp,Grunt和Webpack合作过。 我觉得到目前为止,我所使用的最好的构建工具是Maven。 简单而简洁,在我看来。 出于这个原因,我想知道是否有可能使用Maven作为Gulp,Grunt和Webpack的替代品来部署我的Web应用程序。 同时,我很乐意使用Kotlin代替JavaScript。 有没有什么可能的方式,我可以安装具有这些技术的样板web项目: Maven而不是Gulp,Grunt,Webpack Kotlin代替JavaScript SASS而不是CSS 并有以下库集成: VueJS , FlexboxGrid或类似的, 字体真棒和C3js ? 谢谢!

如何将HTML元素或DocumentFragment附加到DOM?

我有一个像<p>Hello, World!</p>这样的HTML片段<p>Hello, World!</p>并且希望将其附加到包含HTML页面的容器 <script src="lib/kotlin.js"></script> <script src="my-app.js"></script> 我脑海中有两个包: kotlin.js.dom.html.window.document。* kotlin.browser.document。* 我应该使用哪一个,如何访问文档的根目录? 我已经尝试document.getElementById("container") ,其中容器是一个DIV的ID。 但是这返回null 。 我也试过document.appendChild(node) … 还有哪些我应该更喜欢上面的软件包?

Kotlin允许扩展现有类型是否好?

Kotlin能够扩展现有的类型。 例如,我们可以这样做 : fun String.replaceSpaces(): String { return this.replace(' ', '_') } val formatted = str.replaceSpaces() 但是, 这是一个反模式 。 Kotlin是否回避了在Javascript中导致的问题?

KotlinJS中的Kootlin失败的世界没有定义

我有一个名为Main.kt的Kotlin文件 package com.ahp.mui fun main(args: Array<String>) { println("…") println("Hello World") } 项目设置为KotlinJS项目。 一旦我编译,我看到下面的文件正在生成: target/production/ahp-mui/ahp-mui.js target/production/ahp-mui/ahp-mui.js.map target/production/ahp-mui/ahp-mui.meta.js 主生成的文件包含: (function (Kotlin) { 'use strict'; var _ = Kotlin.defineRootPackage(null, /** @lends _ */ { com: Kotlin.definePackage(null, /** @lends _.com */ { ahp: Kotlin.definePackage(null, /** @lends _.com.ahp */ { mui: Kotlin.definePackage(null, /** @lends _.com.ahp.mui */ { main_kand9s$: function (args) […]

JavaFX,JavaScript控制台日志记录和框架(Vue.js)

好吧,我正在开发一个基本上是自包含的web应用程序。 Jetty后端通过RESTful Ajax调用与HTML / JS前端进行通信,前端位于JavaFX WebEngine中。 无论如何,我在这个项目中使用了Vue.js。 我已经重定向控制台日志记录使用我已经读了几次相同的方法(请注意我使用Kotlin的后端): class JavaBridge { fun log(text: String){ AppLogger.webConsole.debug(text) } } //Other code here… val window = engine.executeScript("window") as JSObject val bridge = JavaBridge() window.setMember("java", bridge) engine.executeScript(""" console.log = function(message){ java.log(message); } """) 所以,这里是我的问题的一个例子,用一些示例JavaScript: console.log('This will print to the logs'); new Vue({ el: '#element', methods: { doSomething: function(){ console.log('This […]