2016-05-06 9 views
8

जब एक Angular2 परियोजना है कि कोणीय CLI ng new [project-name] साथ प्रारंभ किया गया था करने के लिए एक बुनियादी express.js विन्यास (टाइपप्रति का प्रयोग करके) जोड़ने, मैं एक्सप्रेस संकलित करने के लिए निम्न टाइपिंग जोड़ने की जरूरत घूंट का उपयोग कर सर्वर:जोड़ना सर्वर साइड कोड

typings स्थापित --ambient --save नोड

यह typings/browser.d.ts में निम्न पंक्ति और typings/main.d.ts

कहते हैं
/// <reference path="browser/ambient/node/index.d.ts" /> 
and 
/// <reference path="main/ambient/node/index.d.ts" /> 

एक्सप्रेस server.ts फ़ाइल में मैं main बजाय browser के लिए एक संदर्भ जोड़ सकते हैं टाइपप्रति खुश रखने के लिए

/// <reference path="../typings/main.d.ts" /> 

लेकिन जब मैं browser.d.ts फ़ाइल में नोड टाइपिंग संदर्भ छोड़ देते हैं, ng build आदेश विफल हो जाएगा:

Build failed. 
The Broccoli Plugin: [BroccoliTypeScriptCompiler] failed with: 
Error: Typescript found the following errors: 
    C:/Users/user123/Downloads/my-catalog-master/my-catalog-master/tmp/broccoli_type_script_compiler-input_base_path-7VFCE2dg.tmp/0/src/typings.d.ts (3, 13): Subsequent variable declarations must have the same type. Variable 'module' must be of type 'NodeModule', but here has type '{ id: string; }'. 
    at BroccoliTypeScriptCompiler._doIncrementalBuild (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\lib\broccoli\broccoli-typescript.js:115:19) 
    at BroccoliTypeScriptCompiler.build (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\lib\broccoli\broccoli-typescript.js:43:10) 
    at C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\broccoli-caching-writer\index.js:152:21 
    at lib$rsvp$$internal$$tryCatch (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\broccoli-caching-writer\node_modules\rsvp\dist\rsvp.js:1036:16) 
    at lib$rsvp$$internal$$invokeCallback (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\broccoli-caching-writer\node_modules\rsvp\dist\rsvp.js:1048:17) 
    at lib$rsvp$$internal$$publish (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\broccoli-caching-writer\node_modules\rsvp\dist\rsvp.js:1019:11) 
    at lib$rsvp$asap$$flush (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\broccoli-caching-writer\node_modules\rsvp\dist\rsvp.js:1198:9) 
    at nextTickCallbackWith0Args (node.js:420:9) 
    at process._tickCallback (node.js:349:13) 

The broccoli plugin was instantiated at: 
    at BroccoliTypeScriptCompiler.Plugin (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\broccoli-caching-writer\node_modules\broccoli-plugin\index.js:10:31) 
    at BroccoliTypeScriptCompiler.CachingWriter [as constructor] (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\broccoli-caching-writer\index.js:21:10) 
    at BroccoliTypeScriptCompiler (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\lib\broccoli\broccoli-typescript.js:27:10) 
    at Angular2App._getTsTree (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\lib\broccoli\angular2-app.js:280:18) 
    at Angular2App._buildTree (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\lib\broccoli\angular2-app.js:101:23) 
    at new Angular2App (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\lib\broccoli\angular2-app.js:42:23) 
    at module.exports (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\angular-cli-build.js:6:10) 
    at Class.module.exports.Task.extend.setupBroccoliBuilder (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\angular-cli\lib\models\builder.js:55:19) 
    at Class.module.exports.Task.extend.init (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\angular-cli\lib\models\builder.js:89:10) 
    at new Class (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\angular-cli\node_modules\core-object\core-object.js:18:12) 
    at Class.module.exports.Task.extend.run (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\angular-cli\lib\tasks\build.js:15:19) 
    at C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\angular-cli\lib\commands\build.js:32:24 
    at lib$rsvp$$internal$$tryCatch (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\angular-cli\node_modules\rsvp\dist\rsvp.js:1036:16) 
    at lib$rsvp$$internal$$invokeCallback (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\angular-cli\node_modules\rsvp\dist\rsvp.js:1048:17) 
    at lib$rsvp$$internal$$publish (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\angular-cli\node_modules\rsvp\dist\rsvp.js:1019:11) 
    at lib$rsvp$asap$$flush (C:\Users\user123\Downloads\my-catalog-master\my-catalog-master\node_modules\angular-cli\node_modules\angular-cli\node_modules\rsvp\dist\rsvp.js:1198:9) 

मैं अब browser.d.ts में के लिए लाइन को हटा सकता है तो यह फिर से काम शुरू होता है लेकिन यह है कि आदर्श जब पुन: स्थापित करने typings नहीं है। मैं वर्तमान में angular-cli v1.0.0-beta.0

उत्तर

4

src/typings.d.ts फ़ाइल से वास्तविक त्रुटि के स्रोत का उपयोग कर रहा हूँ। कोणीय-CLI इस निम्नलिखित सामग्री के साथ फ़ाइल typings.d.ts बनाता है:

/// <reference path="../typings/browser.d.ts" /> 
declare var module: { id: string }; 

इस फाइल को निकाला जा रहा है समस्या हल हो और आवेदन अभी भी काम कर रहा है।

+0

क्या आप कृपया अधिक जानकारी प्रदान कर सकते हैं कि आप कोणीय क्ली के साथ सर्वर पक्ष को कैसे एकीकृत कर पाएंगे? "एनजी निर्माण" और "एनजी की सेवा" भी संकलन और सर्वर साइड कोड चलाते हैं? – Johnny

+0

मैं कोणीय CLI के साथ सर्वर कोड संकलन नहीं है, मैं भी इसे उस तरह से रखने के लिए करना चाहते हैं।निर्माण को पूर्ववत करने के लिए मैं बस गल्प का उपयोग करता हूं। एक कार्य एनजी सेवा करता है और दूसरा कार्य सर्वर शुरू करता है। – emp

+0

उत्तर के लिए धन्यवाद। क्या आपके पास बीज प्रोजेक्ट का लिंक होना है जो कोणीय क्ली के साथ-साथ सर्वर कोड दोनों का उपयोग करता है? – Johnny

2

मैं और यह सुनिश्चित करें कि मैं typings install node-4 --ambient --save के माध्यम से नोड 4 के लिए typings था बनाने के लिए

declare var module: NodeModule;

से

declare var module: { id: string };

src/typings.d.ts

बदल कर इस को हल करने में सक्षम था।

0

.spec.ts फाइल के बारे में त्रुटि। जब मैं

'@ कोणीय/परीक्षण' को अद्यतन;

कोड

तरह

'@ कोणीय/कोर/परीक्षण';

मेरी त्रुटि हल हो गई;

import { 
    describe, 
    ddescribe, 
    expect, 
    iit, 
    it 
} from '@angular/testing'; 
import {Hero} from './hero'; 

describe('Hero',() => { 
    it('should create an instance',() => { 
    expect(new Hero()).toBeTruthy(); 
    }); 
}); 
संबंधित मुद्दे