SPFX @ pnp / sp v2.0.0 item.like не является функцией

Я использую pnpjs v 2.0.0 с SPFX для выполнения некоторых операций со списком.

public async getitem(listname) {
    // get a specific item by id
    const item: any = await sp.web.lists.getByTitle(listname).items.getById(20).get();
    console.log(item);
    // await item.like();
    // get the liked by data
    const likedByData: ILikeData[] = await item.getLikedBy();
    console.log(likedByData);
    // get the liked by information
    const likedByInfo: ILikedByInformation = await item.getLikedByInformation();
    console.log(likedByInfo);
}

Я получаю объект item, но не могу добавить к нему лайк, появляется сообщение об ошибке:

Uncaught (in promise) TypeError: item.like is not a function

Я использовал документацию: @ pnp / sp / комментарии и отметки "Нравится"


person ysfibm    schedule 07.01.2020    source источник


Ответы (1)


Во-первых: правильно ли вы все ссылаетесь и импортируете? Просто прошу пояснить, потому что предоставленный вами код не отображается. Вот что нужно:

import { sp } from "@pnp/sp";
import "@pnp/sp/comments/item";
import { ILikeData, ILikedByInformation } from "@pnp/sp/comments";

Но я думаю, вы сделали это правильно.

Во-вторых, что, возможно, более вероятно, проблема: если вы внимательно посмотрите документацию (указанную вами ссылку), вверху страницы будет указано следующее:

Эти API-интерфейсы в настоящее время находятся на стадии бета-тестирования и могут быть изменены или могут работать не на всех клиентах.

Я протестировал точный код из документации в своей среде разработки, и это тоже не работает. Так что это может еще не работать на вашем арендаторе.

person Abbas    schedule 14.01.2020