我已将npm库xrm-mock安装到ASP.Net核心Web应用程序中。它显示在npm文件夹和磁盘上的node_module文件夹中:
我有一个位于test\formTemplate\contact.ts
的文件尝试在第一行导入它:
import { XrmMockGenerator, XrmMock } from "xrm-mock";
但VS显示强调" xrm-mock"作为例外(TS) Cannot find module 'xrm-mock'
这是我的tsconfig.json位于我的web项目的根目录:
{
"compileOnSave": true,
"compilerOptions": {
"module": "umd",
"moduleResolution": "node",
"noEmitOnError": true,
"noImplicitAny": true,
"noImplicitThis": true,
"removeComments": false,
"sourceMap": true,
"strictNullChecks": true,
"suppressImplicitAnyIndexErrors": true,
"target": "es5",
"types": [
"es6-promise",
"jasmine",
"steal",
"xrm"
]
},
"include": [
"./webresources/new_/common/*.ts",
"./webresources/new_/scripts/*.ts",
"./webresources/*.ts",
"./test/**/*.ts"
]
}
我是否需要以某种方式在某处特定node_modules
文件夹?
答案 0 :(得分:0)
这个问题有几个根本原因。首先是我错误地导入了XrmMock。 XrmMock的索引如下:
export * from "./xrm-mock/index";
export { XrmMockGenerator } from "./xrm-mock-generator/index";
这意味着我的导入应该是这样的:
import * as XrmMock from "xrm-mock";
import { XrmMockGenerator } from "xrm-mock";
另一个问题是Visual Studio本身。我在web项目的根目录中运行tsc
并修复了所有编译错误,然后重新启动了Visual Studio。之后,一切都开始正常工作。 (我也不得不禁用ReSharper,但这很常见,因为ReSharper很难跟上TS的快速步伐)
答案 1 :(得分:-1)
我遇到了同样的问题,最终将xrm-mock文件夹拖到@types文件夹中,以便可以将其导入到test.ts中。