html - 使用 ""和 ' ' 分配标签之间的差异

标签 html angular

所以我学习了 Angular 并开始学习 switch 语句,但是我对有关 quotation makrs 的 switch 语句的 div 标签分配感到困惑。这是html代码:

<div [ngSwitch]="color">
  <div *ngSwitchCase="red">You picked red color</div>
  <div *ngSwitchCase="blue">You picked blue color</div>
  <div *ngSwitchCase="green">You picked green color</div>
</div>

我已经声明了一个变量 color在我的.ts文件

export class StructuralDividesComponent implements OnInit {
public color="red"; 
constructor() { }

ngOnInit() {
}

}

为什么此代码仅在 color 时才有效值在 "'red'"而不是 "red" .

最佳答案

我认为这是核心 JavaScript 概念。当您给出 *ngSwitchCase="red"时,它会尝试从其组件中查找红色变量并替换该值。但是如果你想将它与字符串值匹配,那么你必须编写 *ngSwitchCase="'red'"

更多可以查看->When to use double or single quotes in JavaScript?

关于html - 使用 ""和 ' ' 分配标签之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54663633/

相关文章:

javascript - 以 Angular react 形式显示条件输入框

html - 此图像不会在其 Bootstrap 列中居中

jquery - 启用单个复选框

html - 创建像门一样摆动的 CSS3 3D 旋转

angularjs - 遍历对象数组Angular 2

javascript - 扩展当前 div 时保持其他 div 的状态

css - Angular Material 对话框面板类不会更新

angular - 如何调用一个函数来检查 Angular 2.0 中的复选框

html - 尽管计算了宽度,滑动的容器仍会移动

iphone - iphone 上的双 header