generator-gulp-angular
generator-gulp-angular copied to clipboard
error gulp serving with typescript build
i installed angular 1.5 with typescript. this occurs on serve:
ERROR in ./src/app/main/main.controller.ts
(11,26): error TS2503: Cannot find namespace 'angular'.
ERROR in ./src/app/main/main.controller.ts
(21,22): error TS2503: Cannot find namespace 'angular'.
ERROR in /Users/phamdt/Documents/ui/src/app/main/main.controller.spec.ts
(4,1): error TS2304: Cannot find name 'describe'.
ERROR in /Users/phamdt/Documents/ui/src/app/main/main.controller.spec.ts
(7,3): error TS2304: Cannot find name 'beforeEach'.
ERROR in /Users/phamdt/Documents/ui/src/app/main/main.controller.spec.ts
(7,14): error TS2304: Cannot find name 'angular'.
I was able to fix this issue on my project by using:
typings install angular --ambient --save
Where typings can be installed via npm.
have same issue, typings install angular --ambient --save did not helped
same issue
Same here. Will it be fixed in some upcomming version?
UPDATE: Okay, I think, that issue is with changed DefinitelyTyped angularjs directory structure. If you search typings search angularjs, then you will see, that it doesn't provide angularjs typings, that are placed in typings.json file. That is why after generator finished app is missing required typings.
As far as I can tell, it means, that if one does select angularjs version 1.5 (stable), then he can't use TypeScript. Sadly, but so. Will try with 1.2.
I was able to quick win this issue by downgrading global typing package to 0.7.9 version
Workarounds are not suitable in this case as a permanent solution.
Maybe it will be enought to update typings.json? I was able to update all typings. Since recently one needs to specify the source other than npm manually, e.g. typings install dt~angular --save --global, where [dt - typings from DefinitelyTyped (usually --global)] is. Full example of my typings.json
{
"name": "gulpAngular",
"version": false,
"ambientDependencies": {
"angular-cookies": "github:DefinitelyTyped/DefinitelyTyped/angularjs/angular-cookies.d.ts#bb051830df88f5a55dcf06b7fe85bf6b62cc97f2",
"angular-sanitize": "github:DefinitelyTyped/DefinitelyTyped/angularjs/angular-sanitize.d.ts#bb051830df88f5a55dcf06b7fe85bf6b62cc97f2",
"jquery": "github:DefinitelyTyped/DefinitelyTyped/jquery/jquery.d.ts#bb051830df88f5a55dcf06b7fe85bf6b62cc97f2",
"angular-resource": "github:DefinitelyTyped/DefinitelyTyped/angularjs/angular-resource.d.ts#bb051830df88f5a55dcf06b7fe85bf6b62cc97f2",
"angular-ui-router": "github:DefinitelyTyped/DefinitelyTyped/angular-ui-router/angular-ui-router.d.ts#bb051830df88f5a55dcf06b7fe85bf6b62cc97f2",
"ui-bootstrap": "github:DefinitelyTyped/DefinitelyTyped/angular-ui-bootstrap/angular-ui-bootstrap.d.ts#bb051830df88f5a55dcf06b7fe85bf6b62cc97f2",
"angular-mocks": "github:DefinitelyTyped/DefinitelyTyped/angularjs/angular-mocks.d.ts#bb051830df88f5a55dcf06b7fe85bf6b62cc97f2",
"angular": "github:DefinitelyTyped/DefinitelyTyped/angularjs/angular.d.ts#bb051830df88f5a55dcf06b7fe85bf6b62cc97f2",
"jasmine": "github:DefinitelyTyped/DefinitelyTyped/jasmine/jasmine.d.ts#bb051830df88f5a55dcf06b7fe85bf6b62cc97f2",
"karma-jasmine": "github:DefinitelyTyped/DefinitelyTyped/karma-jasmine/karma-jasmine.d.ts#bb051830df88f5a55dcf06b7fe85bf6b62cc97f2",
"moment-node": "github:DefinitelyTyped/DefinitelyTyped/moment/moment-node.d.ts#bb051830df88f5a55dcf06b7fe85bf6b62cc97f2",
"moment": "github:DefinitelyTyped/DefinitelyTyped/moment/moment.d.ts#bb051830df88f5a55dcf06b7fe85bf6b62cc97f2"
},
"globalDependencies": {
"angular": "registry:dt/angular#1.5.0+20160602160139",
"angular-cookies": "registry:dt/angular-cookies#1.4.0+20160317120654",
"angular-mocks": "registry:dt/angular-mocks#1.3.0+20160425155016",
"angular-resource": "registry:dt/angular-resource#1.5.0+20160602125522",
"angular-sanitize": "registry:dt/angular-sanitize#1.3.0+20160317120654",
"angular-ui-bootstrap": "registry:dt/angular-ui-bootstrap#0.13.3+20160602140119",
"angular-ui-router": "registry:dt/angular-ui-router#1.1.5+20160521151413",
"jasmine": "registry:dt/jasmine#2.2.0+20160505161446",
"jquery": "registry:dt/jquery#1.10.0+20160417213236",
"karma-jasmine": "registry:dt/karma-jasmine#0.0.0+20160316155526",
"moment": "registry:dt/moment#2.8.0+20160316155526",
"moment-node": "registry:dt/moment-node#2.11.1+20160511043338"
}
}
@jeserkin is right on this, but he left the last part out for my setup to work.
From the beginning, I went through each of the ambientDependencies and installed each one with typings install angular --global --save where angular was replaced each time. This got my typings.json to match @jeserkin's with my own components.
The important part is to make sure you do a typings i after going through your list.
To save time on the typings install process, you can string all your typings together like below:
typings install --global --save angular angular-cookies angular-mocks angular-resource angular-sanitize and so on.
@lucasangelon
typings ERR! deprecated The "ambient" flag is deprecated. Please use "global" instead
BTW using global flag doesn't fix the problem. Logs persist.
UPDATE
@BAByrne
To save time on the typings install process, you can string all your typings together like below: typings install --global --save angular angular-cookies angular-mocks angular-resource angular-sanitize and so on.
It seems like there's no "--ignore" flag and when one typing crashes it stops all the flow. Like @jeserkin said, I had to specify the source ( registry mirror ) for every packet. Example:
typings install dt~angular --save --global
not
typings install angular --save --global
RE-UPDATE
IT WORKED FOR ME
I don't know why but after installing all typings if you go into src/app/index.module.ts
You'll find
/// <reference path="../../typings/main.d.ts" />
Which is pointing to a file that doesn't exist ( for me ) I renamed into
/// <reference path="../../typings/index.d.ts" />
and it worked, all logs are gone 🎉
@Alligatore3 Your comment works for me , thanks a lot.