React JSX:在报价中访问道具
在JSX中,如何从引用的属性值中引用来自props
值?
例如:
<img className="image" src="images/{this.props.image}" />
生成的HTML输出是:
<img class="image" src="images/{this.props.image}">
React(或JSX)不支持属性值内的variables插值,但是可以将大括号内的任何JSexpression式作为整个属性值,所以这是可行的:
<img className="image" src={"images/" + this.props.image} />
如果要使用es6string插值,则还需要在刻度线周围加上大括号:
<img className="image" src={`images/${this.props.image}`} />
如果你和Harmony一起使用JSX,你可以这样做:
<img className="image" src={`images/${this.props.image}`} />
在这里,您将src
的值作为expression式写入。
最佳做法是添加getter方法:
getImageURI() { return "images/" + this.props.image; } <img className="image" src={this.getImageURI()} />
那么,如果你稍后有更多的逻辑,你可以顺利地维护代码。
对于人们,寻找“地图”function和dynamic数据的答案,这里是一个工作的例子。
<img src={"http://examole.com/randomview/images" + each_actor['logo']} />
这给了URL为“ randomviewhttp/img.dovov.com2/dp_pics/182328.jpg ”(随机的例子)