Строковая интерполяция в Typescript, заменяя «заполнители» переменными - PullRequest
0 голосов
/ 06 сентября 2018

Я не могу найти достаточно четкий ответ по этой теме, поэтому я задаю вопрос:

В C # я могу сделать следующее, например:

var text = "blah blah";
var strTest = String.Format("This is a {0}", text); //output: 'This is a blah blah'

Как бы я этого достиг в Typescript?

Использование:

Я загружаю URL из файла environment.ts, и этот строковый URL должен содержать заполнители, а на моем слое обслуживания замените заполнители фактическими параметрами, которые необходимо передать.

Ответы [ 2 ]

0 голосов
/ 06 сентября 2018

Я бы предложил использовать анонимные функции генератора в вашем файле environments.ts, чтобы вы могли передавать нужные переменные и иметь строки шаблона внутри этих функций.Примерно так:

Environment.ts

 export const thisIsA = (str: string) => `This is a ${str}`;

Какой-то другой файл:

import * as env from `environments';

var text = "blah blah";
var strTest = env.thisIsA(text); //output: 'This is a blah blah'
0 голосов
/ 06 сентября 2018

Используйте шаблонную строку , которая, на мой взгляд, намного лучше, чем String.Format, поскольку они не страдают от проблем с плохой индексацией (неправильный заполнитель):

var text = "blah blah";
var strTest = `This is a ${text}`;
console.log(strTest);

Если я не знаю имя переменных, которые мне нужно передать ??

Затем оберните в функцию, например,

const gen = (text) => `This is a ${text}`;
...