2015-06-11 19 views
7

मैं आधिकारिक Angular2 वेबसाइट पर ट्यूटोरियल का अनुसरण कर रहा हूं।मॉड्यूल '"कोणीय 2/कोणीय 2"' के पास कोई निर्यात सदस्य नहीं है '

/// <reference path="typings/angular2/angular2.d.ts" /> 
import {Component, View, bootstrap, For} from 'angular2/angular2'; 

@Component({ 
    selector: 'display' 
}) 
@View({ 
    template: '<p>name: {{myName}}</p>' + 
       '<p>Friends:</p>' + 
       '<ul>'+ 
       '<li *for="#name of names">'+ 
        '{{name}}'+ 
       '<li>'+ 
       '<ul>', 
    directives: [For] 
}) 
class DisplayComponent{ 
    myName: string; 
    names: Array<string>; 

    constructotr(){ 
     this.myName = "Alice"; 
     this.names = ["Winston", "Alex", "Shannon", "Irizu"]; 
    } 
} 

bootstrap(DisplayComponent); 

यहाँ मेरी एचटीएमएल है:

https://angular.io/docs/js/latest/guide/displaying-data.html

यहाँ मेरी .ts फ़ाइल है

<html> 
<head> 
     <script src="https://github.jspm.io/jmcriffey/[email protected]/traceur-runtime.js"></script> 
     <script src="https://jspm.io/[email protected]"></script> 
     <script src="https://code.angularjs.org/2.0.0-alpha.23/angular2.dev.js"></script> 
</head> 
<body> 
    <display></display> 
    <script> 
     System.import('show-properties'); 
    </script> 
</body> 

</html> 

और मैं angular2, आरएक्स और ES6 वादा स्थापित किया है।

फिर भी त्रुटि बनी रहती है।

संदेश टीएस 6042: संकलन पूर्ण। फ़ाइल परिवर्तन के लिए देख रहे हैं। संदेश टीएस 6032: फ़ाइल परिवर्तन का पता चला। Incremental संकलन शुरू करना ... show-Properties.ts (2,37): त्रुटि TS2305: मॉड्यूल '"कोणीय 2/कोणीय 2"' में कोई एक्सपो rted सदस्य 'के लिए' नहीं है। संदेश टीएस 6042: संकलन पूर्ण। फ़ाइल परिवर्तन के लिए देख रहे हैं।


अद्यतन

यहाँ मेरी अद्यतन .ts कोड है:

/// <reference path="typings/angular2/angular2.d.ts" /> 
import { 
ComponentAnnotation as Component, 
    ViewAnnotation as View, bootstrap, NgFor 
} from 'angular2/angular2'; 



@Component({ 
    selector: 'display' 
}) 
@View({ 
    template: '<p>name: {{myName}}</p>' + 
       '<p>Friends:</p>' + 
       '<ul>'+ 
       '<li *ng-for="#name of names">'+ 
        '{{name}}'+ 
       '<li>'+ 
       '<ul>', 
    directives: [NgFor] 
}) 
class DisplayComponent{ 
    myName: string; 
    names: Array<string>; 

    constructotr(){ 
     this.myName = "Alice"; 
     this.names = ["Winston", "Alex", "Shannon", "Irizu"]; 
    } 
} 

bootstrap(DisplayComponent); 

angular2.d.ts अब भी है अल्फा 26.

अब वहाँ कोई त्रुटि है संदेश और मैं देख सकता हूं

नाम: मित्र:

लेकिन कोई मान डाला नहीं गया है। और मैं एक त्रुटि संदेश मिल गया है:

शो-properties.ts (7.2): त्रुटि TS2348: प्रकार की मान 'typeof ComponentAnnotation' प्रतिदेय नहीं है। क्या आपका मतलब 'नया' शामिल करना था? शो-Properties.ts (10,2): त्रुटि TS2348: प्रकार का प्रकार 'टाइपफ़ व्यूअनोटेशन' कॉल करने योग्य नहीं है। क्या आपका मतलब 'नया' शामिल करना था? संदेश टीएस 6042: संकलन पूर्ण। फ़ाइल परिवर्तन के लिए देख रहे हैं।

उत्तर

13

आपकी समस्या यह है कि दस्तावेज सिंक में नहीं है। यदि आपने हाल ही में इंस्टॉलेशन के लिए प्रलेखन का पालन किया है तो यह नवीनतम संस्करण अल्फा 26 के लिए टाइपिंग स्थापित करेगा, जिसमें बहुत सारे टूटे हुए बदलाव हैं। और दस्तावेज कोड के उस संस्करण के साथ एक23 संस्करण का उपयोग करता है। आप या तो

1) अपने टाइपिंग को पुराने संस्करण में अपडेट करें जो v23 से मेल खाता है, जिसे आप find it here कर सकते हैं। सामग्री की प्रतिलिपि बनाएँ और इसे ./typings/angular2/angular2.d.ts में बदलें।

2) अपनी कोणीय स्क्रिप्ट को alpha 26 पर अपग्रेड करें और कुछ चीजों को ठीक करें।

  • For अब NgForIfNgIf
  • *for अब *ng-for अब है,, *if अब *ng-if है ...
  • injectables (यदि आप अपने निर्देश सेटिंग्स में उपयोग करना चाहते हैं) अब appInjector

    है
  • es6-promise, rx औरके लिए टाइपिंग इंस्टॉल करेंउसी tsd query xxx --action install कमांड का उपयोग कर।

    Demo - 23

    Demo - 26

तुम भी angular-class webpack starter से स्टार्टअप इस्तेमाल कर सकते हैं।

+0

हाय मैं 2 सुझाव का पालन किया:

मैं अगर आप कुछ काम कर कोणीय 2.0 उदाहरण में रुचि रखते हैं कुछ नमूने यहां की है। अब मुझे एक त्रुटि संदेश मिलता है। कृपया मेरा अपडेट देखें। धन्यवाद – Franva

+1

टाइपसिप्ट का उपयोग करते समय आपको उस अनुमान के रूप में 'एनोटेशन' का उपयोग नहीं करना चाहिए। मैं सिर्फ 'angular2/angular2' से 'आयात {घटक, दृश्य, बूटस्ट्रैप, NgFor} आयात करता हूं;' एक plnkr में es6 कोड के लिए था। जैसा कि मैंने इसके लिए कहा है, अद्यतन किए गए उत्तर में उपरोक्त वर्णित टाइपिंग को भी इंस्टॉल करें। यह भी ध्यान दें कि 'कन्स्ट्रक्टर' की वर्तनी आपके कोड में एक टाइपो है। आशा है कि आप यहां पर पता लगाने में सक्षम होना चाहिए। – PSL

+0

आपकी मदद और धैर्य के लिए धन्यवाद। अंत में समस्या हल हो गई है :) – Franva

4

हां, इसका नाम बदलकर एनजी-फॉर। एनजी-अगर के साथ ही। बस इसे अपनी टीएस फ़ाइल में अपडेट करें और देखें। http://www.syntaxsuccess.com/viewarticle/angular-2.0-examples

+1

धन्यवाद टीजीएच, मैंने अपना प्रोग्राम काम किया है। Angular2 के कुछ ट्यूटोरियल का पालन करने के बाद, मैंने पाया कि बहुत सारे दस्तावेज हैं, अपडेट तोड़ते हैं आदि। मैंने स्थिर संस्करण तक पहुंचने तक प्रतीक्षा करने का फैसला किया। लेकिन आपकी मदद की सराहना करें :) – Franva

संबंधित मुद्दे