javascript - 如何在 javascript 或 typescript 字符串中插入变量值?
问题描述
变量文件:
export class VariableSettings {
public static string_value: string = 'vikas/${id}/data';
}
其他文件。
import {VariableSettings} from './variables';
getData(id:string ){
console.log(`${VariableSettings.string_value}`, `${id}`);
// it prints vikas/${id}/data abcd11123
}`
现在我想要像“vikas/abcd11123/data”这样的结果。那么如何在该字符串中注入 id 。
任何有关相同的建议将不胜感激。
谢谢
解决方案
要使用插值字符串,您需要``
像在第二个片段中那样使用字符串分隔符。如果您已经使用非插值字符串来保存设置的值,则无法使用插值功能对其进行插值(您可以使用正则表达式执行替换,但这有点混乱)。
最简单的解决方案是将字段设为函数并id
作为参数
export class VariableSettings {
public static USER_BOOKINGS = (id: number) => `vikas/${id}/data`;
}
console.log(`${VariableSettings.USER_BOOKINGS(10)}`);
console.log(VariableSettings.USER_BOOKINGS(10)); // Or no interpolation at call site, not needed anymore if you just need the single value
现在USER_BOOKINGS
将是一个函数,它将构造字符串所需的参数作为参数。这样,字符串所需的参数就清晰且类型安全。
推荐阅读
- javascript - reactStringReplace() 不一致的正则表达式匹配
- javascript - 使用 Javascript 从 URL 中去除字符
- java - 使用 jsch session 和 channelexec 执行多个命令
- javascript - 为什么 replace('_', '-') 在双下划线的情况下不起作用?
- amazon-web-services - 长时间处理 lambda 函数
- c# - Xamarin.Forms 轮播视图
- .net - 连接到 UWP 中的 SignalR(核心)集线器时出现“证书颁发机构无效或不正确”
- python - 如何在 jupyter notebook 中获得大的输出窗口?
- nginx - 友好的 url nginx 修复
- javascript - Chrome 控制台:导航到网页并在加载后单击按钮