Angular 5的HttpClient:toPromise()接受什么参数?

时间:2017-11-11 18:47:37

标签: typescript promise httpclient angular5

如果我尝试返回这样的特定类型的承诺:

public myMethod(): Promise<MyType> {
  return this.httpClient.get('/my/url').toPromise();
}

...我收到错误,返回类型为Promise&lt; Object&gt;与预期类型Promise&lt; MyType&gt;不匹配。通过转换结果或执行此操作,这很容易解决:

public myMethod(): Promise<MyType> {
  return this.httpClient.get<MyType>('/my/url').toPromise();
}

但是,还有另一种选择是为toPromise()函数提供可选参数。我的IDE说参数的类型是“PromiseCtor:PromiseConstructorLike”或“PromiseCtor:typeof Promise”。

public myMethod(): Promise<MyType> {
  return this.httpClient.get('/my/url').toPromise(???);
}

我无法弄清楚什么语法会满足???然而,在上面。

关于什么可以填写为有效参数的任何想法?

2 个答案:

答案 0 :(得分:0)

您需要在get方法get<MyType>中指定类型:

public myMethod(): Promise<MyType> {
   return this.httpClient.get<MyType>('/my/url').toPromise();
}

答案 1 :(得分:0)

driver = webdriver.Chrome("C:\\chrome_driver\\chromedriver_win32\\chromedriver.exe")
driver.get("https://admin.typeform.com/signup")
driver.find_element_by_id("signup_owner_alias").send_keys("Bruce Wayne")
driver.find_element_by_id("signup_owner_email").send_keys("bruce.wayne@gmail.com")
driver.find_element_by_id("signup_terms").click()
driver.find_element_by_id("signup_owner_language").click()