React - 使用来自 API 的数据填充 select 下拉列表

React - Fill select dropdown with data from API

我想用从 api 获取的数据填充我的 select>option。一切正常,我可以在 console 或另一个 div 上看到我的数据,但在 option 标签中它们看起来像 Object object。我该如何解决?这是我的代码:

    state = {
        loading: true,
        city: null,
    }
    async componentDidMount(){
        const url = ...;
        const response = await fetch(url, {
            headers: {
                ...
            }
        })
        const data = await response.json();
        this.setState({city: data.results[0], loading: false})
    }

...

<select>
  <option>Select city</option>
  <option>
    {this.state.loading || !this.state.city ? (<p>Loading...</p>) : 
    (<p>{ this.state.city.name }</p>)}
  </option>
</select>

p.s: 我不仅应该显示第 0 个数据属性,还应该显示所有数据的属性。

<option>
    {this.state.loading || !this.state.city ? (<p>Loading...</p>) : 
    (<p>{ this.state.city.name }</p>)}
  </option>

以上代码将不起作用,因为

或任何其他标签不能位于选项标签内 p 标签超出选项标签并且不可见