我需要插入一个变量,这是一个字符串,但这不起作用。 有没有办法插入这个变量?直接进行替换会更好吗?
例如:
time = duration.years();
dateTime = this.i18nService.getTranslation('past-date-years');
//dateTime value is = "${time} years ago"
console.log(`${dateTime}`); //not working
console.log(`${time} years ago`);//working
答案 0 :(得分:1)
由于字符串插值语法正确,这意味着> oneHotEncode
Source: table<sparklyr_tmp_211f3897a9c1> [?? x 3]
Database: spark_connection
a b output
<dbl> <dbl> <list>
1 1 -0.7109400 <dbl [3]>
2 2 -0.9688218 <dbl [3]>
3 1 1.1678944 <dbl [3]>
4 3 0.6903080 <dbl [3]>
> oneHotEncode$output
NULL
为空或空字符串。请将记录的字符串的输出添加到您的问题和/或控制台中显示的任何错误。
根据您在下面的评论,您似乎在字符串插值中有一个字符串插值,其中第一个尚未被评估。
以下(基本)代码有效:
dateTime
...将打印结果并解析所有变量,但那是因为TypeScript知道如何将这些行分开并从中构造正常的连接。
似乎在您的实例中,let time = "This is time";
let vari = `${time} | is what we got`;
let result = `${vari} | is this possible?`;
document.body.innerText = result;
未解析getTranslation()
,而是构建一个带有插值标记的转义字符串。这需要妥善解决。
由于TypeScript编译到不同的目标,而字符串插值本质上是TypeScript在幕后进行字符串连接,你将不得不做一些编写代码并评估生成的JavaScript以查看它是否提供有效的输出将适当地解决变量。
转到TypeScript play,并使用它来检查输出。你必须插入time
方法正在做的一些事情,看看输出是否会正确生成。