Ich versuche eine Drittanbieter-API in meine meteor.js-App zu integrieren. So ist die Idee, wenn auf /blog
Route, sollte die App external Klasse Methode aufrufen.Methode aus importierter Klasse undefined
router.js
:
import blog from '../imports/scripts/blog';
FlowRouter('/blog', {
name: 'blog',
action: function(params) {
blog.init(); // here I get the error "init is not a function" (it's undefined)
}
});
blog.js
:
export default class Blog {
constructor(){
...
}
init() {
console.log('init blog api');
...
}
}
ich die neueste Meteor mit (1.4.2.3) und die folgenden npm Pakete um ES2015 zu aktivieren:
"babel-cli": "^6.18.0",
"babel-core": "^6.18.2",
"babel-loader": "^6.2.8",
"babel-preset-es2015": "^6.18.0",
"babel-runtime": "^6.18.0",
"meteor-node-stubs": "^0.2.4",
"webpack": "^1.13.3"
Ich vermisse etwas in meinem Setup, das ichnicht anrufen kann?
Sie brauchen 'var Blog = new Blog() zu tun;' und sie dann wird init haben - 'blog.init()' –
Sie exportieren eine Klasse, keine Instanz davon. Sie sollten 'Blog importieren '../ imports/scripts/blog'; und dann' const blog = new Blog(); '. –