我在keystone.js项目中使用了包express-react-views
,因此我静态生成了我的观点。但是,当放入我自己制作的自定义组件时,原生HTML标签似乎不起作用。
让我们说我有以下内容:
office.name = name
office.address = lorem ipsum
office.contactInfo.phone = 123
office.contactInfo.fax = 456
如果我渲染以下内容:
<Stub textPosition="right" title={"Office / " + office.name}>
{office.address}
<small>Tel: {office.contactInfo.phone}</small>
<br />
<small>Fax: {office.contactInfo.fax}</small>
</Stub>
它有点像这样:
NAME
lorem.ipsum
,[object Object],[object Object],[object Object]
在我看来,这三个标签成了对象。
我做错了什么?谢谢!
答案 0 :(得分:0)
正如我在评论中所写,{office.contactInfo.fax}
是对象,但现在只有一个文本字段。我不确定其他字段/属性是什么,但要在html中显示内容,您应该从该Fax对象中提取文本字段。
例如:
> fax = {'fax_home': '12345', 'fax_work': '6789'}
> Object {fax_home: "12345", fax_work: "6789"}
> typeof(fax)
> "object"
> fax['fax_home']
> "12345"
此外,您可以迭代对象中的键以提取您需要的内容。 (这在反应中也是可能的)。只是JS:
fax = {'fax_home': '12345', 'fax_work': '6789'}
Object.keys(fax).forEach(function (key) {
console.log(fax[key]);
});