मुझे इन्हें एक साथ काम करने के लिए प्रतीत नहीं होता है। मैं ऑरेलिया सीएलआई का उपयोग कर रहा हूं और अन्य पुस्तकालयों के लिए सफलतापूर्वक ऐसा किया है (जैसे चयन 2, स्पिन, पल और अंक)। हालांकि मुझे काम करने के लिए टोस्टर नहीं मिल रहा है। यह है, जो कि अभी तक मेरे पास है।aastlia और टाइपस्क्रिप्ट में toastr.js कैसे काम कर सकता है?
सबसे पहले मैं npm install toastr --save
और typings install dt~toastr --global --save
भाग गया aurelia.json
में, विक्रेता-bundle.js अनुभाग में, मैं इस तरह के रूप में एक निर्भरता कहा:
"jquery",
{
"name": "toastr",
"path": "../node_modules/toastr/build",
"main": "toastr.min",
"resources": [
"toastr.min.css"
],
"deps": ["jquery"]
}
अद्यतन: रेप्रो को पूर्ण चरणों
मेरे पास इन उपकरणों के इन संस्करणों को स्थापित किया गया है: नोड (6.3.0), एनपीएम (3.10.3), औ (0.17.0)
खुला एक कमांड प्रॉम्प्ट और प्रकार:
au new au-toastr
3 (Custom)
2 (Typescript)
3 (Sass)
1 (configure unit testing)
1 (Visual Studio Code)
1 (create project)
1 (install project dependencies)
cd au-toastr
npm install jquery --save
npm install toastr --save
typings install dt~jquery --global --save
typings install dt~toastr --global --save
फिर एक संपादक में aurelia.json
खुला और
"jquery",
{
"name": "toastr",
"path": "../node_modules/toastr/build",
"main": "toastr.min",
"resources": [
"toastr.min.css"
],
"deps": ["jquery"]
}
निर्भरता के नीचे करने के लिए जोड़ ।
jquery की .d.ts फ़ाइल के साथ संघर्ष के कारण typings/globals/angular-protractor/index.d.ts
पर लाइन 1839 (declare var $: cssSelectorHelper;
) पर टिप्पणी करें।
कमांड प्रॉम्प्ट में
import * as toastr from 'toastr';
export class App {
activate() {
toastr.info('blah');
}
}
या
import 'toastr';
export class App {
activate() {
toastr.info('blah');
}
}
प्रकार au run
साथ app.ts
सामग्री बदलें और फिर एक ब्राउज़र खोलें और यूआरएल है कि कमांड लाइन का कहना है कि आवेदन पर उपलब्ध है पर नेविगेट (आमतौर पर http://localhost:9000
)।
प्रयास 1
import 'toastr';
export class ViewModel {
activate() {
toastr.info('blah');
}
}
त्रुटि: ReferenceError: toastr परिभाषित नहीं है
प्रयास 2
import {autoinject} from 'aurelia-framework';
import 'toastr';
@autoinject()
export class ViewModel {
constructor(private toastr: Toastr) {
}
activate() {
this.toastr.info('blah');
}
}
त्रुटि: लेखन त्रुटि: लेखन त्रुटि:: toastr this.toastr.info एक समारोह
प्रयास 3
import * as toastr from 'toastr';
export class ViewModel {
activate() {
toastr.info('blah');
}
}
त्रुटि नहीं है।जानकारी एक फंक्शन नहीं है
प्रयास 4
import {autoinject} from 'aurelia-framework';
import * as toastr from 'toastr';
@autoinject()
export class ViewModel {
constructor(private toastr: Toastr) {
}
activate() {
this.toastr.info('blah');
}
}
त्रुटि: लेखन त्रुटि: this.toastr.info एक समारोह
उपरोक्त सभी नहीं है जब मैं कमांड लाइन से au build
चलाता हूं तो ठीक से ट्रांसफ़ाइल करें। मुझे कोई त्रुटि नहीं है।
मैं जो खो रहा हूं या मैं और क्या कोशिश कर सकता हूं, के रूप में खो गया हूं। किसी भी तरह की सहायता का स्वागत किया जाएगा!
अद्यतन: मेरा अनुमान है वहाँ या तो aurelia-cli
में एक बग या अधिक होने की संभावना मैं पैकेज से निपटने कर रहा हूँ गलत तरीके से किसी भी तरह aurelia-cli
लोड हो रहा है तंत्र के संबंध में है। जब मुझे अपनी साइट से टाइपस्क्रिप्ट कंकाल मिलता है, जो कि जेएसपीएम का उपयोग मॉड्यूल लोडर के रूप में कर रहा है, और ऊपर दिए गए चरणों का पालन करें, टोस्टर बस ठीक काम करता है।
कोई विचार है कि मैं इसे ऑरेलिया-क्ली के साथ काम करने के लिए कैसे प्राप्त कर सकता हूं?
क्या मेरे लिए काम करता है (लेकिन सादा के साथ ES6 + और कोई टाइपस्क्रिप्ट नहीं है): 'toastr' से आयात टोस्टर; ' –
हाँ, जो टाइपस्क्रिप्ट में एक ट्रांसमिशन त्रुटि देता है। जैसा कि 'toastr' से आयात {Toastr} करता है; ' – peinearydevelopment
क्या आपने प्रयास 2 या 4 प्रयास किया है, लेकिन कन्स्ट्रक्टर में' this.toastr = toastr; 'के साथ? जब तक कि ऐसा कुछ न हो जो 'autautject() 'करता है; मैं वास्तव में अपने ऑरेलिया पर नहीं हूं। –