无法在打字稿中转换 HTMLSelectElement

tru*_*cet 3 html typescript angular5

我正在使用 Angular 5。在 .ts 文件中,当我尝试将元素类型转换为 HTMLSelectElement 时,它会引发一些错误。我检查了文档,但值选项在 HTMLSelectElement 中可用。我不知道我做错了什么;

.ts 文件:

get_department 函数内部:

var selected_box = <HTMLSelectElement(document.getElementById('departments')).value;
Run Code Online (Sandbox Code Playgroud)

HTML 文件:

<select id="departments" class="form-control" (change)="get_department();">
    <option value="">Select</option>
    <option value="prm">PRM</option>
    <option value = "crm">CRM</option>
    <option value = "crdx">CRDX</option>
  </select>
Run Code Online (Sandbox Code Playgroud)

错误:

类型“HTMLElement”上不存在属性“value”。

Tit*_*mir 7

您应该将断言放在括号内:

var selected_box = (<HTMLSelectElement>document.getElementById('departments')).value;
// OR
var selected_box = (document.getElementById('departments') as HTMLSelectElement).value;
Run Code Online (Sandbox Code Playgroud)