Angularjs 使用npm安装的javascript库
对不起,我很迷路。其实我有这个,Angularjs 使用npm安装的javascript库,angularjs,typescript,npm,ecmascript-6,Angularjs,Typescript,Npm,Ecmascript 6,对不起,我很迷路。其实我有这个, import * as angular from 'angular'; import 'ts-angular-jsonapi'; 不要返回任何错误。但是,当我这么做的时候 import * as angular from 'angular'; import * as jsonapi from 'ts-angular-jsonapi'; 我得到这个错误: ERROR in ./src/index.ts (14,23): error TS2307: Cannot
import * as angular from 'angular';
import 'ts-angular-jsonapi';
不要返回任何错误。但是,当我这么做的时候
import * as angular from 'angular';
import * as jsonapi from 'ts-angular-jsonapi';
我得到这个错误:
ERROR in ./src/index.ts
(14,23): error TS2307: Cannot find module 'ts-angular-jsonapi'.
我需要对ts angular jsonapi
库做哪些更改来修复此错误
更多信息:我需要这样做,因为我需要这样做:
class myresource extend jsonapi.resource {
}
import * as animal_module from 'animal_module';
class Snake extends animal_module.Animal {
constructor(name: string) { super(name); }
}
let sam = new Snake('Sammy the Python');
你为什么不试试
从“角度”导入角度;从“ts jsonapi”导入jsonapi;
我找到了解决方案。编写.TS文件时,不能导入任何.JS文件。您需要使用require()。在守则中:
// some_file.ts
import * as angular from 'angular';
var jsonapi = require('ts-angular-jsonapi'); // .js library
但是,如果您正在为typescript节点模块搜索最佳和正确的解决方案,我将构建一个。在本例中,您可以执行以下操作:
class myresource extend jsonapi.resource {
}
import * as animal_module from 'animal_module';
class Snake extends animal_module.Animal {
constructor(name: string) { super(name); }
}
let sam = new Snake('Sammy the Python');
将
/src/index.ts
更改为不依赖ts angular jsonapi
的存在?很抱歉,我不理解您的评论:(好吧,/src/index.ts
似乎期望ts angular jsonapi
变量存在。因此,如果您将import'ts angular jsonapi';
更改为import*,作为来自“ts angular jsonapi”的jsonapi;
的jsonapi,它将不再工作。也许您只需要像我们一样将ts angular jsonapi
更改为jsonapi
)ll.从“angular”导入angular
表示“模块”“angular”没有默认导出。这实际上是不正确的,请在tsconfig.json
中启用编译器选项.allowJs
设置。