防暴js三元有条件的onClick事件

时间:2017-08-23 18:07:44

标签: javascript riotjs

我想在一个防暴标记中有条件地分配一个事件处理程序......所以我尝试了以下内容:

hasMobileMsg

但是它认为from pyspark.sql import SparkSession from pyspark.sql import Window from pyspark.sql import functions as F spark = SparkSession.builder.getOrCreate() df = spark.createDataFrame([(0,1),(1,3),(2,5),(3,4),(4,2)],['t','x']) df.show() +---+---+ | t| x| +---+---+ | 0| 1| | 1| 3| | 2| 5| | 3| 4| | 4| 2| +---+---+ w = Window.orderBy('t') df = df.withColumn('somecol',F.collect_set('x').over(w)) df.show() +---+---+---------------+ | t| x| somecol| +---+---+---------------+ | 0| 1| [1]| | 1| 3| [1, 3]| | 2| 5| [1, 5, 3]| | 3| 4| [1, 5, 3, 4]| | 4| 2|[1, 5, 2, 3, 4]| +---+---+---------------+ def pct_rank(s,v): x=sorted(s) if len(x) == 1: return float(0) else: pc = float(1)/(len(x)-1) idx = x.index(v) return float("{0:.2f}".format(idx*pc)) pct_udf = F.udf(pct_rank) df.select("t","x",pct_udf(df['somecol'],df['x']).alias('pct_rank')).show() +---+---+--------+ | t| x|pct_rank| +---+---+--------+ | 0| 1| 0.0| | 1| 3| 1.0| | 2| 5| 1.0| | 3| 4| 0.67| | 4| 2| 0.25| +---+---+--------+ / {{1}}是回调函数......关于如何实现这一点的任何想法?

1 个答案:

答案 0 :(得分:2)

Haven没有使用过Riot.js,但看起来你并没有使用普通的JavaScript三元语法。你尝试过这样的语法:

<li class="email__ {active--: showEmail} {disabled--: !hasEmailMsg}"
        onClick={hasEmailMsg ? handlePreviewChange('email') : doNothing }
></li>

其中doNothing只是一个......什么都不做的函数。 (假设你想要的行为)。

我对您的确切设置并不熟悉,但我尝试使用JSFiddle 进行简短演示:https://examples.javacodegeeks.com/android/core/widget/stackview/android-stackview-example/我可以使用三元功能。你可能比我更有机会看到你的代码的相似之处。