下面是我的代码:
import * as React from 'react';
import styles from './PnpfolderoperationsDemo.module.scss';
import { IPnpfolderoperationsDemoProps } from './IPnpfolderoperationsDemoProps';
import { escape } from '@microsoft/sp-lodash-subset';
import { PrimaryButton } from 'office-ui-fabric-react';
import { sp } from "@pnp/sp/presets/all";
export default class PnpfolderoperationsDemo extends React.Component<IPnpfolderoperationsDemoProps, {}> {
constructor(props){
super(props);
sp.setup({
spfxContext: this.context
});
}
public render(): React.ReactElement<IPnpfolderoperationsDemoProps> {
const {
description,
isDarkTheme,
environmentMessage,
hasTeamsContext,
userDisplayName
} = this.props;
对包执行以下命令
npm install @pnp/logging @pnp/common @pnp/odata @pnp/sp --save
使用 pnpjs 出现以下错误:
#Module '"@pnp/sp/presets/all"' has no exported member 'sp'.
有人遇到过类似的情况吗? 谢谢
您可能正在使用 pnpjs v3.x 您的代码似乎对 v2.x 有效,在 v3.x 中发生了变化(全局“sp”对象已被弃用)。请查看转换指南,或使用 v2.x
https://pnp.github.io/pnpjs/transition-guide/
要安装已知与您似乎正在使用的 SPFx 示例兼容的先前版本 (v2.x),请尝试明确指定版本:
npm install @pnp/[email protected] @pnp/[email protected] @pnp/[email protected] @pnp/[email protected] --save
开发者,此问题是由于TypeScript版本造成的。如果我们要导入{SP},则需要使用~2版本,所以请使用下面的命令来解决问题:
卸载以前的版本: npm 卸载@pnp/sp
然后运行以下命令: npm 我@pnp/[电子邮件受保护]