DSpace 7.6:添加额外DC字段至条目视图,需修改哪个Angular组件
在DSpace 7.6中添加自定义DC字段到条目视图的组件说明
1. 简洁条目视图(Brief Item View)
需要修改的核心组件是 item-brief.component.ts 及其对应模板 item-brief.component.html,路径位于 src/app/shared/item-list/brief/item-brief/:
- 组件类中,确认目标DC字段(例如
dc.identifier.alternative-url)已被包含在条目对象的元数据集合中。若需单独提取该字段,可在ngOnInit或数据处理逻辑里添加字段获取逻辑。 - 模板文件中添加展示代码,示例如下:
<div *ngIf="item.metadata?.['dc.identifier.alternative-url']"> <span class="metadata-label">全文替代链接:</span> <a [href]="item.metadata['dc.identifier.alternative-url'][0].value" target="_blank">{{ item.metadata['dc.identifier.alternative-url'][0].value }}</a> </div>
2. 扩展条目视图(Extended Item View)
对应的核心组件是 item-page.component.ts 和模板 item-page.component.html,路径在 src/app/item-page/ 下:
- 先确认组件已加载到目标DC字段的元数据。如果元数据未自动获取,需调整
ItemService的查询逻辑,确保包含该字段。 - 在模板的元数据展示区域添加代码,示例如下:
<div class="metadata-field" *ngIf="item.metadata?.['dc.identifier.alternative-url']"> <div class="metadata-label">全文替代链接</div> <div class="metadata-value"> <a [href]="item.metadata['dc.identifier.alternative-url'][0].value" rel="noopener" target="_blank">{{ item.metadata['dc.identifier.alternative-url'][0].value }}</a> </div> </div>
额外注意事项
- 复用现有CSS类(如
metadata-label、metadata-value)可让新字段样式与现有元数据保持一致。 - 若目标DC字段为多值类型,需用
*ngFor循环遍历所有值,而非仅取第一个。 - 修改完成后,需重新构建前端应用:运行
yarn build:prod(或对应npm命令),再部署到DSpace实例中。
内容的提问来源于stack exchange,提问作者Rodregos Benjamins
相关产品推荐
相关产品推荐

