【发布时间】:2017-03-12 21:07:14
【问题描述】:
我是 Angular 的新手,在学习教程的过程中,我在编写模块状态时出于习惯做了些许改变:
.state('sports.medals', {
url: '/:sportName',
templateUrl: 'sports/sports-medals.html',
resolve: {
sportService: function($http, $stateParams){
return $http.get('/sports/${ $stateParams.sportName }');
}
},
这在项目的其余部分中编译得非常好,没有错误。但是,当调用此函数时,它会将 get 内容作为一个完整的字符串读取,而不是按应有的方式解析内容。
正确的称呼方式显然是:
.state('sports.medals', {
url: '/:sportName',
templateUrl: 'sports/sports-medals.html',
resolve: {
sportService: function($http, $stateParams){
return $http.get(`/sports/${ $stateParams.sportName }`);
}
},
使用` 撇号/反引号代替单引号'
作为一名程序员,在处理 javascript 和/或参数中的双引号时,我几乎总是只使用单引号,所以这让我感到惊讶,并且没有立即显现出来。这种行为是否有原因记录在某处?我应该养成在单引号上使用反引号的习惯吗?我想避免其他类似的惊喜。
【问题讨论】:
-
反引号是 ES6/2015 的模板文字 - 他们很高兴知道但不是必需的 developer.mozilla.org/en/docs/Web/JavaScript/Reference/… - 我想补充一下,尽管它们可以使代码更具可读性
-
您肯定也几乎总是完全不在字符串中使用
${…}模式吗? -
一个非常相似/相关的问题here。
-
你把反引号叫做撇号吗?
-
"你把反引号叫做撇号吗?"
标签: javascript angularjs syntax