Tag: JavaScript

如何通过JSON.stringify在kotlin JS序列化一个地图到JSON字符串?

我的示例代码如下: fun main(args: Array<String>) { val testData = mapOf<String, Any>( "name" to "albert", "age" to 26, "work" to listOf("1", "2", "3") ) var value = JSON.stringify(testData, { _, value -> value.toString() }, 2) println(value) } 结果是"{name=albert, age=26, work=[1, 2, 3]}" 。 似乎错过了属性名称和字符串值的所有双引号。 我使用的是KotlinJS而不是Kotlin 那么,如何解决这个问题呢?

你如何实现获取api?

我不明白,如何实现在kotlin中获取API我的代码: var smf: dynamic = js("({})") smf.method = "GET" smf.mode = "cors" smf.cache = "default" window.fetch(url, smf) .then({response -> { console.log("response") }}) .catch({error -> console.error("error") }) 它根本不起作用。 没有控制台消息和任何

如果/ else if / else在某些时候成为打字稿/ javascript中的表达式?

我真的很喜欢Kotlin的这个功能: 在Kotlin中,如果是一个表达式,即它返回一个值。 // As expression val max = if (a > b) a else b (来自https://kotlinlang.org/docs/reference/control-flow.html ) 这也计划打字稿/ JavaScript? 更新: 在回答三元操作员的建议时,当然我也指其他情况,如果: val bla = if ( 5 == 6) { 7 } else if (5 == 7) { 8 } else { 9 } println(bla) // prints 9

每个方法都需要@JsName注解吗?

我在这里试图让NodeJs和Kotlin一起为HelloWorld的例子工作。 根据Kotlin JS文档 , 重载的方法需要@JsName注解。 但以我的经验来看,即使是单一的方法也是如此。 如果没有这个注解,编译器会为方法名称添加一个后缀,如截图所示。 这是一个错误? 还是我错过了什么? 我使用NPM提供的Kotlin 1.1.0模块(如果需要,请检查上面的GitHub链接以获得完整的代码库)。

如何使用Kotlin匿名类作为本机JavaScript函数的参数?

我为这个 ThreeJS类设置了interop层,并且该类的构造函数接受了一个用于设置属性的对象。 //PointCloudMaterial.js THREE.PointCloudMaterial = function ( parameters ) { THREE.Material.call( this ); this.color = new THREE.Color( 0xffffff ); this.map = null; this.size = 1; this.sizeAttenuation = true; this.vertexColors = THREE.NoColors; this.fog = true; this.setValues( parameters ); }; 以下是我希望能够在Kotlin中做的事情,是否有可能以一种时尚的方式使用异常物体? 我原本是想创建一个相当于可能的周界的对象来传入,问题在于它会覆盖当前不是我想要的值。 //Interop Layer native("THREE.PointCloudMaterial") public class PointCloudMaterial(parameters: object) { } //This doesn't compile "Type Expected" //Example […]

在我用于html文件用作onclick回调的Kotlin中定义全局函数

我想在Kotlin / transpiled JavaScript中定义一个函数,我可以通过它的“原始的和全局的形式”到我的html里面的一些输入。 对于原始表单,我的意思不是[项目名称] .doClick()。 <input type="button" value="Click me!" onclick="doClick();>

如何在Kotlin for Javascript的类中设置一个静态属性

我有一种情况,我需要在Kotlin中定义一个类的静态属性,当它被编译成Javascript时,它就成为了这个类的一个真正的静态字段。 在这种情况下,伴侣对象不起作用。 例如,如果我有一个抽象类和它的实现类如下所示: abstract class MyAbstractClass{ abstract val id: Int } class MyClass: MyAbstractClass(){ override val id: Int = 1 //I want this to actually be "static" on the MyClass } 这个编译的Javascript是这样的: function MyAbstractClass() { } function MyClass() { MyAbstractClass.call(this); this.id_jz5fma$_0 = 1; } Object.defineProperty(MyClass.prototype, 'id', { get: function () { return this.id_jz5fma$_0; } }); […]

如何在Kotlin中创建一个库,并从目标为JavaScript或Java的项目中使用它?

我正在研究如何创建一个由前端和后端代码库使用的通用库。 我希望能够创建一个纯粹在Kotlin中编写的库,对它进行编译,并注册所需的工件作为js(使用npm)和kotlin-java(使用maven)的依赖项。 这是一个支持或可能的工作流程吗? 如果是的话,这样做的方法是什么?

kotlinc-js没有输出kotlin.js文件

目前正试图通过命令行让一个Kotlin“Hello,World”编译成JS。 我按照教程: https://kotlinlang.org/docs/tutorials/javascript/getting-started-command-line/command-line-library-js.html 我看到正在生成的Javascript文件,但我错过了我期望看到的kotlin.js文件: https : kotlin.js 到javascript.html 生成的JS文件的前几行读取: if (typeof kotlin === 'undefined') { throw new Error("Error loading module 'sample-library'. Its dependency 'kotlin' was not found. Please, check whether 'kotlin' is loaded prior to 'sample-library'."); } if (typeof kotlin === 'undefined') { throw new Error("Error loading module 'sample-library'. Its dependency 'kotlin' was not found. […]

如何将Kotlin代码编译为JavaScript以供我的LibGDX Web应用程序使用?

我试图在我的LibGDX项目中运行Kotlin代码,并且它可以在桌面应用程序中成功运行,但是到目前为止,Google Web Toolkit不支持kotlin,它只将java代码编译为JS。 libGDX wiki提到可以使用内建的Kotlin功能将kotlin代码编译成JS,那么,如何将Kotlin代码编译成JS与我的GWT webapp一起使用呢? 这是甚至可能与libGDX的当前结构,或者我应该继续尝试实施TeaVM到我的项目,它支持JVM字节码? 如果TeaVM是一个更好的解决方案,或者有任何的知识,那么我最近刚刚问了一个关于如何将TeaVM实现到LibGDX的问题: 我如何将TeaVM添加到现有的libGDX项目中? 我已经有很多的困难,现在想办法解决这个问题,任何帮助将不胜感激,因为我觉得这对我的项目非常重要!