我遇到了问题,我的输出会为除Title之外的所有字段抛出“未定义”。
这是我的代码:
(function () {
if (typeof SPClientTemplates === 'undefined')
return;
var overrideContext = {};
//overrideContext.BaseViewID = 1;
//overrideContext.ListTemplateType = 101;
overrideContext.Templates = {};
overrideContext.Templates.Header = "My Custom Rendering News View";
overrideContext.Templates.Item = customItem;
SPClientTemplates.TemplateManager.RegisterTemplateOverrides(overrideContext);
})();
function customItem(ctx) {
var htmlTest = "Test: " + ctx.CurrentItem.Title + " " + ctx.CurrentItem.Byline + " " + ctx.CurrentItem.Modified + " " + ctx.CurrentItem.RollupImage;
return htmlTest;
}
输出是: “测试:新闻档案undefined undefined undefined”
你们知道问题是什么吗?我知道视图中存在Title,Byline,Modified和RollupImage字段。
提前致谢。
答案 0 :(得分:1)
这些字段在SharePoint中不称为Byline和RollupImage。
它们被称为:ArticleByLine和PublishingRollupImage。
此外,实际字段(Byline和Rollup图像)需要包含在视图中。
答案 1 :(得分:-2)
尝试替换此代码
overrideContext.Templates.Item = customItem;
这一个
overrideContext.Templates["Item"] = customItem;