mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-08-17 04:41:36 +08:00
Work around a webpack bundling fail in transitions by using full imports.
It seems Webpack can't discover aliased modules that relative-import other aliased modules e.g. "ui/transition", aliased to "ui/transition/transition.android", not discovering "./slide-transition" which is aliased to "ui/transition/slide-transition.android.js"
This commit is contained in:
@ -156,16 +156,19 @@ export function _setAndroidFragmentTransitions(navigationTransition: frameModule
|
|||||||
var transition: definition.Transition;
|
var transition: definition.Transition;
|
||||||
if (name) {
|
if (name) {
|
||||||
if (name.indexOf("slide") === 0) {
|
if (name.indexOf("slide") === 0) {
|
||||||
var slideTransitionModule = require("./slide-transition");
|
//HACK: Use an absolute import to work around a webpack issue that doesn't resolve relatively-imported "xxx.android/ios" modules
|
||||||
|
var slideTransitionModule = require("ui/transition/slide-transition");
|
||||||
var direction = name.substr("slide".length) || "left"; //Extract the direction from the string
|
var direction = name.substr("slide".length) || "left"; //Extract the direction from the string
|
||||||
transition = new slideTransitionModule.SlideTransition(direction, navigationTransition.duration, navigationTransition.curve);
|
transition = new slideTransitionModule.SlideTransition(direction, navigationTransition.duration, navigationTransition.curve);
|
||||||
}
|
}
|
||||||
else if (name === "fade") {
|
else if (name === "fade") {
|
||||||
var fadeTransitionModule = require("./fade-transition");
|
//HACK: Use an absolute import to work around a webpack issue that doesn't resolve relatively-imported "xxx.android/ios" modules
|
||||||
|
var fadeTransitionModule = require("ui/transition/fade-transition");
|
||||||
transition = new fadeTransitionModule.FadeTransition(navigationTransition.duration, navigationTransition.curve);
|
transition = new fadeTransitionModule.FadeTransition(navigationTransition.duration, navigationTransition.curve);
|
||||||
}
|
}
|
||||||
else if (name.indexOf("flip") === 0) {
|
else if (name.indexOf("flip") === 0) {
|
||||||
var flipTransitionModule = require("./flip-transition");
|
//HACK: Use an absolute import to work around a webpack issue that doesn't resolve relatively-imported "xxx.android/ios" modules
|
||||||
|
var flipTransitionModule = require("ui/transition/flip-transition");
|
||||||
var direction = name.substr("flip".length) || "right"; //Extract the direction from the string
|
var direction = name.substr("flip".length) || "right"; //Extract the direction from the string
|
||||||
transition = new flipTransitionModule.FlipTransition(direction, navigationTransition.duration, navigationTransition.curve);
|
transition = new flipTransitionModule.FlipTransition(direction, navigationTransition.duration, navigationTransition.curve);
|
||||||
}
|
}
|
||||||
|
@ -106,14 +106,16 @@ export function _createIOSAnimatedTransitioning(navigationTransition: frame.Navi
|
|||||||
if (name.indexOf("slide") === 0) {
|
if (name.indexOf("slide") === 0) {
|
||||||
let direction = name.substr("slide".length) || "left"; //Extract the direction from the string
|
let direction = name.substr("slide".length) || "left"; //Extract the direction from the string
|
||||||
if (!slideTransitionModule) {
|
if (!slideTransitionModule) {
|
||||||
slideTransitionModule = require("./slide-transition");
|
//HACK: Use an absolute import to work around a webpack issue that doesn't resolve relatively-imported "xxx.android/ios" modules
|
||||||
|
slideTransitionModule = require("ui/transition/slide-transition");
|
||||||
}
|
}
|
||||||
|
|
||||||
transition = new slideTransitionModule.SlideTransition(direction, navigationTransition.duration, nativeCurve);
|
transition = new slideTransitionModule.SlideTransition(direction, navigationTransition.duration, nativeCurve);
|
||||||
}
|
}
|
||||||
else if (name === "fade") {
|
else if (name === "fade") {
|
||||||
if (!fadeTransitionModule) {
|
if (!fadeTransitionModule) {
|
||||||
fadeTransitionModule = require("./fade-transition");
|
//HACK: Use an absolute import to work around a webpack issue that doesn't resolve relatively-imported "xxx.android/ios" modules
|
||||||
|
fadeTransitionModule = require("ui/transition/fade-transition");
|
||||||
}
|
}
|
||||||
|
|
||||||
transition = new fadeTransitionModule.FadeTransition(navigationTransition.duration, nativeCurve);
|
transition = new fadeTransitionModule.FadeTransition(navigationTransition.duration, nativeCurve);
|
||||||
|
Reference in New Issue
Block a user