Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 多页上的引导程序在另一页上停止_Angularjs_Bootstrap Tour - Fatal编程技术网

Angularjs 多页上的引导程序在另一页上停止

Angularjs 多页上的引导程序在另一页上停止,angularjs,bootstrap-tour,Angularjs,Bootstrap Tour,我们想在我们的SPA上使用bootstrap tour脚本() 由于我们希望浏览多个页面(可能的话),我将巡更放入rootScope,并定义了一些函数来启动巡更。我的想法是,rootScope总是可以在应用程序中使用,所以我们总是可以访问巡演 显示了第一步,但当我想继续下一步时,在重定向之后,巡更将停止。所以用户在下一页,但没有浏览 因为我们在巡更中使用角度平移,所以不能将巡更放置在单独的文件中以加载到角度之外 这是放置在rootScope中的一次巡演的代码(我们有4次不同的巡演)。为了便于阅读

我们想在我们的SPA上使用bootstrap tour脚本()

由于我们希望浏览多个页面(可能的话),我将巡更放入
rootScope
,并定义了一些函数来启动巡更。我的想法是,
rootScope
总是可以在应用程序中使用,所以我们总是可以访问巡演

显示了第一步,但当我想继续下一步时,在重定向之后,巡更将停止。所以用户在下一页,但没有浏览

因为我们在巡更中使用角度平移,所以不能将巡更放置在单独的文件中以加载到角度之外

这是放置在
rootScope
中的一次巡演的代码(我们有4次不同的巡演)。为了便于阅读,我删除了一些步骤

因此,在这段代码中,巡更在步骤3之后停止,但它从步骤4向前移动到路径

var generalTour = new Tour({
        debug: true,
        name: "GeneralTour",
        storage: window.localStorage,
        steps: [
            { //1
                element: '#generalTourHome',
                title: $filter('translate')('START_WITH_PRISMANOTE'),
                content: $filter('translate')('GENERALTOUR_WELCOME'),
                path: '/retailer/home'
            },
            { //2
                element: '#generalTourMyShopMenu',
                title: $filter('translate')('MORE_SHOPS'),
                content: $filter('translate')('HERE_YOU_WILL_FIND_YOUR_SHOPS'),
                path: '/retailer/home'
            },
            { //3
                element: '#generalTourMyShopIcon',
                title: $filter('translate')('SHOP_DATA'),
                content: $filter('translate')('CLICK_ON_SHOP_ICON'),
                path: '/retailer/home'
            },
            { //4
                element: '#generalTourFillInInformation',
                title: $filter('translate')('FILL_IN_DATA'),
                content: $filter('translate')('FILL_IN_YOUR_DATA'),                 
                path: '/retailer/shop'
            },
            { //5
                element: '#generalTourBrands',
                title: $filter('translate')('SHOP_BRANDS'),
                content: $filter('translate')('INDICATE_WHICH_BRANDS_YOU_ARE_USING'),   
                path: '/retailer/shop'              
        },
        ]
    });

$rootScope.startGeneralTour = function(){
    generalTour.init();
    generalTour.start(true);
    generalTour.restart();
}

看起来您正在两个页面上开始并重新启动巡演。 您应该在
/retailer/shop
页面上设置一个条件,如果巡演需要继续,请不要重新启动:

$rootScope.startGeneralTour = function(){

    generalTour.init();

    if( some_function__is_page( '/retailer/shop' ) && !generalTour.ended() ){
        generalTour.start(true);
    } else {
        generalTour.restart();
    }
}

如果用户实际上没有结束巡更,但例如他刷新了页面,您还想继续在
/retailer/home
页面上巡更,则可以跳过检查您是否在该条件下的
/retailer/shop
页面上。

看起来您正在启动并重新启动两个页面上的巡更。 您应该在
/retailer/shop
页面上设置一个条件,如果巡演需要继续,请不要重新启动:

$rootScope.startGeneralTour = function(){

    generalTour.init();

    if( some_function__is_page( '/retailer/shop' ) && !generalTour.ended() ){
        generalTour.start(true);
    } else {
        generalTour.restart();
    }
}
如果用户实际上没有结束巡更,但例如刷新了页面,您还想继续在
/retailer/home
页面上巡更,则可以跳过检查您是否在该条件中的
/retailer/shop
页面上