我有一个带有动态生成的 Ion Select 选项的 Ion Select。有时,离子选择可能只有一个离子选择选项(例如,用户仅创建了一个项目)。
当用户单击选择选项时,它会打开一个项目页面,我想为用户提供再次重新选择同一项目的选项,从而清除以前的选择
我尝试绑定 NgModel 并将其设置为 null,如下所示:
<ion-select mode="md" interface="popover" style="position: absolute; opacity: 0;" #projectSelect
(ionChange)="selectProject(projectSelect.value, p)"
[(ngModel)]="selection">
<ion-select-option *ngFor="let b of p.buildings; let i = index" [selected]="false" [value]="b.buildingName">
{{b.buildingName}}
</ion-select-option>
Run Code Online (Sandbox Code Playgroud)
然后在selectProject()我设置
selectProject(buildingName: string, project: Project) {
// always! reset the selection
this.selection = null;
Run Code Online (Sandbox Code Playgroud)
但它不会清除选择,并且用户无法重新选择以前选择的选项。
我什至尝试过使用buttonwith(click)=clearSelection()设置selection=null,但无济于事。
我期望清除该选择并允许用户重新选择离子选择。
这可能已经在其他帖子中得到了回答,但我认为我无法准确找到我正在寻找的内容。
我有一个 ( #!/usr/bin/env bash) 函数来检查(环境)变量是否存在
checkForVariable() {
if [[ -z $1 ]]; then
echo "Error: Define $1 environment variable"
exit 1
fi
}
Run Code Online (Sandbox Code Playgroud)
但在错误消息中我希望它告诉我缺少哪个环境变量。
如果我用它来称呼它
checkForVariable "${ENVIRONMENT_NAME}"
如果ENVIRONMENT_NAME没有设置,那么显然我会得到Error: Define environment variable这是没有用的。
如何更改我的函数,以便我可以传递checkForVariable字符串而不是变量引用,即
checkForVariable "ENVIRONMENT_NAME"
我试过例如。if [[ -z "\$${1}" ]]; then但if [[ -z "${$1}" ]]; then这些都不起作用。