在 javascript object 模型中设置 SharePoint 2013 共享文档 WebPart 属性 (JSLink)

Set SharePoint 2013 Shared document WebPart property (JSLink) in javascript object model

我想为 javascript 中的共享文档 Web 部件更改 JSLink 属性。

有什么方法可以设置 jslink 属性 吗?

例如

documentsList.set_title("My title");

我可以设置标题,但是有什么方法可以设置jslink吗?

以下示例演示如何通过 SharePoint JSOM API:

设置 Web 部件 JSLink 属性
var pageUrl = _spPageContextInfo.serverRequestPath;       //current page url
var webPartId = 'ab9149d6-8204-460a-9ecc-4219481ff8ca';   //<-- specify web part id
var jsLinkUrl = '~sitecollection/Style Library/tasks.js'; //<-- specify JSLink url
setupJsLink(pageUrl, webPartId,jsLinkUrl,
  function(){
      console.log('JSLink has been saved');
  },
  function(sender, args) {
      console.log(args.get_message());
  });  

哪里

function setupJsLink(pageUrl, wpId,jsLinkUrl,success,error)
{
    var context = SP.ClientContext.get_current();
    var page = context.get_web().getFileByServerRelativeUrl(pageUrl);
    var wpm = page.getLimitedWebPartManager(SP.WebParts.PersonalizationScope.shared);
    var webpartDef = wpm.get_webParts().getById(new SP.Guid(wpId));
    var webpart = webpartDef.get_webPart();
    var properties = webpart.get_properties();
    properties.set_item("JSLink", jsLinkUrl);
    webpartDef.saveWebPartChanges();
    context.executeQueryAsync(
        function () {
          success();                  
        }, 
        error);
}

如果您是通过应用程序执行此操作,则不可能。函数调用将正确执行,您不会收到任何错误,但什么也不会发生。只是让你知道。