angular – 为什么我无法从AutoMapper(TS)导入并生成Require语句

前端之家收集整理的这篇文章主要介绍了angular – 为什么我无法从AutoMapper(TS)导入并生成Require语句前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用带有TypeScript版本2.0.3的 AutoMapper package,但是当我尝试导入它时,我总是得到错误“’automapper-ts’不是模块”:

enter image description here

enter image description here

如果我查看定义文件,它会以:

declare module AutoMapperJs {

它包含导出语句.

如果我将import语句更改为this,它将编译:

import {} from 'automapper-ts/dist/automapper';

但后来我没有得到一个Require语句,并且在运行时找不到全局的automapper静态变量.为了使它工作,我必须用引用替换import语句:

/// <reference path="../../node_modules/automapper-ts/dist/automapper.d.ts" />

然后添加手动JavaScript链接

<script src="lib/automapper-ts/dist/automapper.js"></script>

谁能解释我做错了什么?

解决方法

尝试导入“automapper-ts / dist / automapper”;应该导入包并让你使用自动化的东西,如automapper.initialize(< ...>);等等.

这类似于RxJS包,它也没有模块化和全局化(据我记得).

谢谢.按照上面的建议和评论,这里是我必须改变以使一切正常工作,虽然我在构建期间仍然遇到编译器错误(请参阅下面的注释):

将其添加到systemjs.config.js文件中:

map: {
        'rxjs': 'npm:rxjs','automapper-ts': 'npm:automapper-ts',},packages: {
        "automapper-ts": {
            defaultExtension: 'js'
        },}

然后只需在component.ts文件中使用import语句:

import 'automapper-ts/dist/automapper';

生成了正确的Require语句.

猜你在找的Angularjs相关文章