Tag: JavaScript

为什么this.state在原生反应中是未定义的?

我是一个完全新手在反应原生,react.js和JavaScript。 我是Android开发者,所以想给RN一个尝试。 基本上,差别是onPress ; 这个代码在toggle()运行时显示'undefined' : class LoaderBtn extends Component { constructor(props) { super(props); this.state = { loading: false }; } toggle() { console.log(this.state); // let state = this.state.loading; console.log("Clicked!") // this.setState({ loading: !state }) } render() { return ( <Button style={{ backgroundColor: '#468938' }} onPress={this.toggle}> <Text>{this.props.text}</Text> </Button> ); } } 但是这个代码工作: class LoaderBtn extends […]

我怎么能通过一个适当的方法参考,所以Nashorn可以执行它?

我正在尝试编写一个库,让我通过Nashorn Javascript引擎执行JSON逻辑规则。 我现在的问题是围绕着我创建的JSObject包装器来处理将数据从Java / Kotlin移动到脚本引擎中。 如果一个数组被传入,例如[true]它将被包装,并且json-logic脚本会接收它,看它是一个数组,并且尝试运行下面的代码: if(Array.isArray(logic)) { return logic.map(function(l) { return jsonLogic.apply(l, data); }); } 当调用.map函数时,Nashorn会调用getMember("map")来获取可执行的函数。 这是我卡住的地方。 我一直无法找到任何合适的语法给Nashorn一个方法或方法的引用,可以作为它的地图函数的接收器调用。 代码可以在这里找到: https : //github.com/deinspanjer/json-logic-java有一些基本的单元测试,包括发生问题的单元测试, JavaJsonLogicTest.simpleApplyJEJO() 。 破解的代码行是com/jsonlogic/JSObjectWrappers.kt:97 。 我非常感谢你的帮助。 更新:基于接受的答案,这里是工作Kotlin版本的代码: package com.jsonlogic import jdk.nashorn.api.scripting.AbstractJSObject import jdk.nashorn.api.scripting.JSObject import java.util.function.Function import javax.script.ScriptEngineManager fun main(args: Array<String>) { val m = ScriptEngineManager() val e = m.getEngineByName("nashorn") // The following JSObject […]

如何在javacript中编写可扩展的方法

我需要写一个方法,我将调用JavaScript中的字符串文字。 我想调用的方法如下所示: "Javascript".toKampala(); 这个功能是否存在于Javascript中? 如果它确实如何编写这样一个方法(toKampala())的JavaScript文字或任何对象? 在Kotlin,我是这样做的; fun String.toHenry():String{ return "$this Henry"; } 我可以打电话 "chalres".toHenry()

Kotlinx-html ref事件

我已经注意到在使用kotlinx html的代码库中的以下功能,而且很难完全理解: private fun <E : HTMLElement> Tag.xrefImpl(prop: KMutableProperty0<E?>) = this.consumer.onTagEvent(this, "ref", { prop.set(it.asDynamic()) }) 据我所知,从google的asDynamic , asDynamic是一种kotlin-js方法,它简单地抑制了类型检查。 好的,但其余的还不清楚。 这个文档并不是很详细的介绍它的内部,即consumer , ref和onTagEvent 。 最重要的是,为什么参数类型KMutableProperty0 ?

如何从Kotlin生成HTML标签?

我想从Kotlin(运行在浏览器中)生成HTML。 我尝试了Kotlinx库,但不支持回调 ,例如: div { onclick = { event -> window.alert("Kotlin!") } } 还有其他类似的图书馆吗? 也许类似于Clojure的Hickup或Groovy的MarkupBuilder ?

我可以在typescriptFile中使用JavaScript吗?

嗨,我开始打字稿。 我研究打字稿是JavaScript的超级集所以我们可以在Typescript文件中使用JavaScript。 我写了这个代码。 const words = '1,2,3,4'.split(','); let sum = 0; words.forEach(w => sum += parseInt(w)); console.log('sum: ${sum}'); 这是输出应该在控制台 总和:10 但结果是 总和:$ {sum} 我在ES6中研究过“$ {}”是指像Kotlin这样的表达 我可以在TS中使用ES6表达式吗? 我正在使用WEBSTORM

我如何将TeaVM添加到我现有的libGDX项目中?

TeaVM是GWT的一种替代方案,它将Java编译为允许使用诸如Scala和Kotlin之类的东西的字节码,我很难理解在TeaVM中添加和运行我的libGDX项目的过程,我将不胜感激任何帮助或指示在添加依赖到我的build.gradle文件后如何运行项目。 谢谢!

JVM – 打开网页并运行Javascript代码

我发现你可以打开这样的网页(我正在使用Kotlin btw。) if (Desktop.isDesktopSupported()){ Desktop.getDesktop().browse(URI(url)) } 现在是否可以在当前网页上运行一些javascript代码来打开按钮等? (不使用像Selenium这样的外部库)。 谢谢

用kotlinx.html DSL创建CSS类

我正在使用Kotlin以Javascript插件和kotlinx.html库来构建示例应用程序: fun main(args: Array<String>) { window.onload = { document.body!!.append.div { a("#", classes = "red") { +"Link" } } } } 我想用“红色”CSS类绘制a链接为红色。 现在我正在使用unsage raw来做到这一点: document.head!!.append.style { unsafe { raw(".red { background: #f00; }") } } 如何用kotlinx.html DSL创建CSS类? 我没有找到任何有关CSS的DSL文件。

为什么ES6模板字符串是他们的方式?

我们必须使用什么原因: 而不是' ${var}而不是$var (比如在Kotlin中)