如何在URL中传递动态参数

时间:2016-11-07 09:08:26

标签: javascript reactjs browser-history

我正在阅读React的教程,除了这部分外,一切正常:

let teacherTopic = event.target.elements[0].value;
let teacherName = event.target.elements[1].value;
let path = 'featured/${teacherTopic}/${teacherName}';
browserHistory.push(path);

我尝试在控制台上登录前两个变量的值,然后得到实际值。但是,当我构造路径时,传递的值实际上是$ {varName},而不是它们中包含的值。

我做错了什么?谢谢!

1 个答案:

答案 0 :(得分:3)

ES6模板文字使用(`)而不是常规引号。 如果需要在字符串中嵌套javaScript变量,请将它们包装在反引号中。

你的例子是:

let teacherTopic = event.target.elements[0].value;
let teacherName = event.target.elements[1].value;
let path = `featured/${teacherTopic}/${teacherName}`;
browserHistory.push(path);

在此处阅读有关模板文字的更多信息: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Template_literals