spfx扩展无关的ApplicationCustomizerContext类型tsc错误

时间:2018-07-13 08:06:04

标签: typescript spfx

我遇到了使用TypesSript处理ApplicationCustomizerContext类型的麻烦

1)我创建了一个spfx应用程序定制程序

2)我已经在应用程序定制程序的主要ts文件中添加了

import ApplicationCustomizerContext from "@microsoft/sp-application-base/lib/extensibility/ApplicationCustomizerContext";

3)并在其onInit()方法上添加:

 var ctx: ApplicationCustomizerContext = this.context;

TypeScript编译器(2.4.2版)错误地编辑:

  

错误TS90010:“ ApplicationCustomizerContext”类型不可分配   键入“ ApplicationCustomizerContext”。两种不同的类型   名称存在,但没有关联。

您偶然知道如何定义导入到打字稿的方式吗?

其他信息: 该项目是使用“ @ microsoft / generator-sharepoint 1.5.1

生成的
"environment": "spo",
"version": "1.5.1",
"packageManager": "npm",
"componentType": "extension",
"extensionType": "ApplicationCustomizer"

tsconfig.json保持不变(原始生成)

  "compilerOptions": {
    "target": "es5",
    "forceConsistentCasingInFileNames": true,
    "module": "esnext",
    "moduleResolution": "node",
    "jsx": "react",
    "declaration": true,
    "sourceMap": true,
    "experimentalDecorators": true,
    "skipLibCheck": true,
    "typeRoots": [
      "./node_modules/@types",
      "./node_modules/@microsoft"
    ],
    "types": [
      "es6-promise",
      "webpack-env"
    ],
    "lib": [
      "es5",
      "dom",
      "es2015.collection"
    ]

1 个答案:

答案 0 :(得分:0)

与1.4.1中的完成方式相比,SPFx v1.5.1中的ApplicationCustomizerContext导入方式似乎有所变化

按如下所示修改您的导入语句:

import { ApplicationCustomizerContext } from "@microsoft/sp-application-base";