如何从当前页面导航到同一页面以获取滑动动画,目前如果我使用框架模块导航到同一页面,则它不会显示任何动画,只是更新当前页面的内容。
答案 0 :(得分:2)
我测试了你的场景,并且应该按照预期执行页面转换,同时导航到当前页面的方式与为不同的页面制作时相同。 我正在附加示例代码。 XML
<Page xmlns="http://schemas.nativescript.org/tns.xsd" navigatingTo="navigatingTo" class="page">
<Page.actionBar>
<ActionBar title="My App" icon="" class="action-bar">
</ActionBar>
</Page.actionBar>
<StackLayout class="p-20">
<Label text="Tap the button" class="h1 text-center"/>
<Button text="TAP" tap="{{ onTap }}" class="btn btn-primary btn-active"/>
<Label text="{{ message }}" class="h2 text-center" textWrap="true"/>
<Button text="Navigate" tap="onTap2" class="btn btn-primary btn-active"/>
</StackLayout>
</Page>
打字稿
import { EventData } from 'data/observable';
import { Page } from 'ui/page';
import { HelloWorldModel } from './main-view-model';
import {topmost} from "ui/frame"
export function navigatingTo(args: EventData) {
let page = <Page>args.object;
page.bindingContext = new HelloWorldModel();
}
export function onTap2(args){
var navigationEntry = {
moduleName: "main-page",
animated: true,
clearHistory:true,
transition: {
name: "slide",
duration: 380,
curve: "easeIn"
}
};
topmost().navigate(navigationEntry);
}
在项目中,我还使用clearHistory
,这会阻止在应用历史记录中保存导航。