Es gibt eine __DEVTOOLS__
globale Variable in meinem Quellcode. Und normalerweise verwende ich webpack DefinePlugin, um es als booleschen Wert zu definieren.Gibt es einen Ansatz, globale Variablen beim Babel-Compilieren zu injizieren oder zu ignorieren?
new webpack.DefinePlugin({
__DEVTOOLS__: true
})
Aber in meinem Mokka Test möchte ich nur babel/register
verwenden und wollen nicht in meinem Test verwenden Wepack. Gibt es einen Ansatz, globale Variablen wie webpack DefinePlugin zu injizieren oder zumindest die globalen Variablen beim Kompilieren zu ignorieren?
aber bei der Verwendung von 'Mokka --compilers js: babel/registrieren --recursive', so scheint es zunächst kompilieren, so will ich vor Lauf fehlgeschlagen Tests. –
Ihr Kommentar ist unklar. Wenn Sie in Ihren Tests eine globale Variable mit dem Namen '__DEVTOOLS__' benötigen, wird die Einstellung' global.__ DEVTOOLS__' so lange erreicht, wie sie vor dem Test ausgeführt wurde - unabhängig davon, ob sie vor oder nach der Kompilierung stattfindet. –
Ich habe 'ReferenceError: __DEVTOOLS__ ist nicht definiert', bevor ein Testcode ausgeführt wird. babel compiling ist früher als mocha running, also sollte ich einen Platz finden, um 'global .__ DEVTOOLS__ = true; 'vor dem Babel Compiling zu injizieren. –