Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 找不到名称“Map”、“Set”、“Symbol”、“WeakMap”、“WeakSet”_Angular_Typescript_Webpack_Typescript Typings - Fatal编程技术网

Angular 找不到名称“Map”、“Set”、“Symbol”、“WeakMap”、“WeakSet”

Angular 找不到名称“Map”、“Set”、“Symbol”、“WeakMap”、“WeakSet”,angular,typescript,webpack,typescript-typings,Angular,Typescript,Webpack,Typescript Typings,这是一个新的Angular 6项目。 所有依赖项都是最新的 错误输出 主要依赖性 @角度/*6.0.3 @类型/节点10.1.2 @类型/核心js 0.9.46 打字稿2.8.3 网页4.9.1 tsconfig.json 死胡同 将目标更改为es5、es2015、es6、es2016 从tsconfig typeroot、types、include、exclude中删除 将./node_模块从tsconfig typeroot更改为node_模块并排除 删除节点模块文件夹和npm缓存,然后使用

这是一个新的Angular 6项目。 所有依赖项都是最新的

错误输出

主要依赖性

@角度/*6.0.3 @类型/节点10.1.2 @类型/核心js 0.9.46 打字稿2.8.3 网页4.9.1 tsconfig.json

死胡同

将目标更改为es5、es2015、es6、es2016 从tsconfig typeroot、types、include、exclude中删除 将./node_模块从tsconfig typeroot更改为node_模块并排除 删除节点模块文件夹和npm缓存,然后使用安装重新安装所有依赖项 我知道这是一个经常被问到的问题,但我没有找到任何解决问题的办法


谢谢你的帮助

ES6类型可以由polyfill core js提供,也可以由TypeScript本身提供,这就是lib编译器选项所负责的。由于相关库是在lib es6中提供的,所以预计es6功能可以通过TypeScript识别

网页包配置将错误路径设置为tsconfig.json:

        {
            test   : /\.ts$/,
            loaders: [

                // Parse TypeScript to JavaScript
                {
                    loader : 'awesome-typescript-loader',
                    options: {
                        configFileName: helpers.root('src', 'tsconfig.json')
                    }
                },

                // Add require(...) as prefix for templateUrl and styleUrls in Angular components
                // This way allow the loader to inject external files as inline data
                'angular2-template-loader'
            ]
        },
所以类型脚本配置没有被选中

应该是:

helpers.root('.', 'tsconfig.json')

ES6类型可以由polyfill core js提供,也可以由TypeScript本身提供,这就是lib编译器选项所负责的。由于相关库是在lib es6中提供的,所以预计es6功能可以通过TypeScript识别

网页包配置将错误路径设置为tsconfig.json:

        {
            test   : /\.ts$/,
            loaders: [

                // Parse TypeScript to JavaScript
                {
                    loader : 'awesome-typescript-loader',
                    options: {
                        configFileName: helpers.root('src', 'tsconfig.json')
                    }
                },

                // Add require(...) as prefix for templateUrl and styleUrls in Angular components
                // This way allow the loader to inject external files as inline data
                'angular2-template-loader'
            ]
        },
所以类型脚本配置没有被选中

应该是:

helpers.root('.', 'tsconfig.json')

首先,我要感谢@estus的回答。 尽管他指出了正确的问题,但这并不能解决问题

事实上,下面的更改并不能解决问题

helpers.root'.'和'tsconfig.json'

我一点也不认为问题可能是我的网页文件中的配置问题,但事实确实如此。 签出我为修复此问题所做的更改:

从helpers.js更改_根路径

从网页包配置更改helpers.root的每次调用


您也可以使用补丁签出标签或签出。首先,我要感谢@estus的回答。 尽管他指出了正确的问题,但这并不能解决问题

事实上,下面的更改并不能解决问题

helpers.root'.'和'tsconfig.json'

我一点也不认为问题可能是我的网页文件中的配置问题,但事实确实如此。 签出我为修复此问题所做的更改:

从helpers.js更改_根路径

从网页包配置更改helpers.root的每次调用


您还可以使用修复程序签出标记或签出。

此行为特定于已指定的lib选项,因此它应该按预期工作,并且不清楚问题出在哪里。考虑提供一种复制问题的方法——STACKBLITZ、RPO等等。Master branch,标记0.1.0。使用Thread Install安装依赖项,然后运行npm run build进行复制。此行为特定于已指定的lib选项,因此它应按预期工作,并且不清楚问题是什么。考虑提供一种复制问题的方法——STACKBLITZ、RPO等等。Master branch,标记0.1.0。使用Thread安装安装依赖项,然后运行npm运行构建进行复制。谢谢@estus,你太棒了。你指出错误是对的,但你的回答并不能解决我的问题。我找到了解决方案,并对我自己的答案进行了评论,以便更明确地说明我是如何修复它的。祝你过得愉快。在发布之前,我已经检查过它是否有效。我不确定这为什么对您不起作用,可能是因为这与当前工作目录有关,或者其他原因,我没有检查helpers.root如何工作。无论如何,不加载tsconfig是一个常见的问题,希望这个问题能帮助其他人。谢谢@estus,你太棒了。你指出错误是对的,但你的回答并不能解决我的问题。我找到了解决方案,并对我自己的答案进行了评论,以便更明确地说明我是如何修复它的。祝你过得愉快。在发布之前,我已经检查过它是否有效。我不确定这为什么对您不起作用,可能是因为这与当前工作目录有关,或者其他原因,我没有检查helpers.root如何工作。无论如何,不加载tsconfig是一个常见的问题,希望这个问题能帮助其他人。
// Removed the second argument .. from the resolve
const _root = path.resolve(__dirname);
// Instead of helpers.root('./src')
helpers.root('src')

// Instead of helpers.root('src', 'tsconfig.json')
// Which was clearly wrong in all cases because it is not in src folder
helpers.root('tsconfig.json')