हैलो,नमूदार त्रुटियों और RxJs 5 beta.3
मैं VS2015 में चल Angular2 बीटा 12 उपयोग कर रहा हूँ। जब मैं 5.0.0-beta.2 से beta.3 तक rxjs को अद्यतन करता हूं तो मुझे आम तौर पर अपने वादों से संबंधित अपवादों की एक श्रृंखला का सामना करना पड़ता है।
उदा।
- संपत्ति
map
प्रकारObservable<Response>
पर - संपत्ति
share
मौजूद नहीं है प्रकार में मौजूद नहीं हैObservable<Response>
- परिवेश मॉड्यूल घोषणा रिश्तेदार मॉड्यूल का नाम
- परिवेश मॉड्यूल अन्य मॉड्यूल या नामस्थान में नेस्ट नहीं किया जा सकता निर्दिष्ट नहीं कर सकते।
Package.json
{
"name": "ASP.NET",
"version": "0.0.0",
"scripts": {
"tsc": "tsc",
"tsc:w": "tsc -w",
"lite": "lite-server",
"start": "concurrent \"npm run tsc:w\" \"npm run lite\" "
},
"dependencies": {
"angular2": "2.0.0-beta.12",
"systemjs": "0.19.24",
"es6-promise": "3.1.2",
"es6-shim": "0.35.0",
"reflect-metadata": "0.1.3",
"rxjs": "5.0.0-beta.3", // beta.2 allowed project to build
"zone.js":"0.6.6"
},
"devDependencies": {
"gulp": "3.9.1",
"gulp-concat": "2.6.0",
"gulp-cssmin": "0.1.7",
"gulp-uglify": "1.5.3",
"rimraf": "2.2.8",
"concurrently": "2.0.0",
"lite-server": "2.1.0",
"typescript": "1.8.9"
}
}
जारी करना इस कोड में समारोह के नक्शे से संबंधित है:
import {Injectable} from 'angular2/core';
import {Http, Response} from 'angular2/http';
import {Headers, RequestOptions} from 'angular2/http';
import {Observable} from 'rxjs/Observable';
import {ApplicationVM} from '../../Applications/ViewModels/Application.ViewModel';
@Injectable()
export class ApplicationService {
constructor(private http: Http) { }
private _serviceUrl = './../api/';
getApplications() {
return this.http.get(this._serviceUrl + "applications/active")
.map(res => <ApplicationVM[]>res.json())
// .map((res: Response) => res.json())
.do(data => console.log(data)) // eyeball results in the console
.catch(this.handleError);
}
private handleError(error: Response) {
console.log(error);
return Observable.throw(error.json().error || 'Server error');
}
}
एक और में, समस्या share()
constructor(private _http: Http) {
console.log("constructor");
this.menulist$ = new Observable(observer => this._menulistObserver = observer).share();
this.menuState$ = new Observable(observer => this._menuStateObserver = observer).share();
this.menuWidth$ = new Observable(observer => this._menuWidthObserver = observer).share();}
साथ है मैं इस लग रहा है महत्वपूर्ण हो सकता है - rxjs फ़ाइलों की एक श्रृंखला unde है सापेक्ष संदर्भ के लिए लाल rlined ../../Observable
(उदाहरण के नीचे interval.d.ts में है)
import { IntervalObservable } from '../../observable/IntervalObservable';
declare module '../../Observable' {
namespace Observable {
let interval: typeof IntervalObservable.create;
}
}
मेरे boot.ts
///<reference path="./../node_modules/angular2/typings/browser.d.ts"/>
import {bootstrap} from 'angular2/platform/browser';
import {ROUTER_PROVIDERS} from 'angular2/router';
import {AppComponent} from './app.component';
import {HTTP_PROVIDERS} from 'angular2/http';
import 'rxjs/Rx'; // kitchen sink
// Bootstrap the application and reference the required directives
bootstrap(AppComponent, [ROUTER_PROVIDERS, HTTP_PROVIDERS]);
मेरे html पृष्ठ
<!-- 1. Load libraries -->
<script src="~/nodelibs/angular2/bundles/angular2-polyfills.js"></script>
<script src="~/nodelibs/systemjs/system.src.js"></script>
<script src="~/nodelibs/typescript/lib/typescript.js"></script>
<script src="~/nodelibs/rxjs/bundles/Rx.js"></script>
<script src="~/nodelibs/angular2/bundles/angular2.dev.js"></script>
<script src="~/nodelibs/angular2/bundles/router.dev.js"></script>
<script src="~/nodelibs/angular2/bundles/http.dev.js"></script>
<!-- 2. Configure SystemJS -->
<script>
var rootPath = "@Url.Content("~/")";
System.config({
//transpiler: 'typescript',
//typescriptOptions: { emitDecoratorMetadata: true },
baseURL: rootPath,
defaultJSExtensions: true,
packages: {
app: {
//format: 'register',
defaultExtension: 'js'
}, map: {
'rxjs/observable/*' : 'nodelibs/rxjs/observable/*.js',
'rxjs/operators/*' : 'nodelibs/rxjs/operators/*.js',
'rxjs/*' : 'nodelibs/rxjs/*.js'
}
}
});
System.import("/app/boot.js")
.then(null, console.error.bind(console));
</script>
मैं स्टंप्डया हूँ और कुछ सहायता की सराहना की जाएगी।
धन्यवाद, दान।
बढ़िया! मैं सोच रहा था कि मुझे यह जानकारी कहां मिलेगी कि मुझे किस पैकेज का उपयोग करना चाहिए *। बहुत बहुत धन्यवाद। – DanAbdn
मेरी टीम में हम एक ही समस्या का सामना कर रहे हैं और केवल विजुअल स्टूडियो इंटेलिजेंस के लिए (वेबपैक टाइपस्क्रिप्ट संकलन ठीक है)। जबकि मुझे पता है कि वर्तमान कोणीय संस्करण को आरएक्सजेएस 5 बीटा 2 की आवश्यकता है, क्या आप जानते हैं कि उन दो चीजें कैसे संबंधित हैं? अर्थात। यह ठीक क्यों बनाता है, लेकिन वीएस शिकायत करता है? हमें nxx-store – superjos
बीटा 6 की वजह से उस आरएक्सजेएस संस्करण की आवश्यकता है, अब मुझे विश्वास है कि – crh225