在解决这个问题之前,一直处在很苦逼的状态,因为 现在绝大多数 前端模块都是 SPA 模式;所以由此而来出了许多的问题,当然我现在提的这个只是其中一个;
  说一下解决方案:
  1、技术栈
    angularjs1.4.9+ui-route+requireJS
  2、解决步骤如下
  

define([ 'app' ], function(app) {
app.config(["$stateProvider", "$urlRouterProvider",
"hammerDefaultOptsProvider", "$urlMatcherFactoryProvider",
"cfpLoadingBarProvider",
function($stateProvider, $urlRouterProvider, hammerDefaultOptsProvider,
$urlMatcherFactoryProvider, cfpLoadingBarProvider) {
/* 微商城——确认订单 */
.state('sureOrder', {
url: '/sureOrder',
params: {isSureOrder: null},
templateUrl : 'tpls/order/sureOrder.html',
controller:'sureOrderCtrl',
})
/* 微商城——确认支付订单 */
.state('sureOrderPay', {
url: '/sureOrderPay',
params: {isPay: null},
templateUrl : 'tpls/order/sureOrderPay.html',
controller:'sureOrderPayCtrl',
})
}]);
}); /**
* app.run模块,程序首先加载它
*/
define[('app', function(app){
app.run(['$rootScope''], function($rootScope){
$rootScope.$on('$satteChangeSuccess',
function(event, toState, toParams, fromState, fromParams){
// toState -> 当前路由信息{url:... , ...},toParams -> 路由参数
//思路 :判断当前路由是否为 需要操作的页面,然后通过为该路由传
//入的参数判断是否停留在当前页面,如上面路由所配置的,初始参数为null
//所以 当你在进入指定页面前 会给路由传一个参数;当你点击返回键时路由走
//默认值null, 所以这时,你就可以操作页面跳转到你指定要返回的页面了 if(toState.url === "/sureOrder"){
if(toParams.isSureOrder != "true"){
$state.go("order");
return;
}
}
if(toState.url === "/sureOrderPay"){
if(toParams.isPay != "true"){
$state.go("shop-index");
return;
}
}
})
})
}])
  
  以上方案,纯属个人思路,我相信大家会有更好的解决方案,欢迎互相讨教分享!
  很想得到大家的评论,指教! 共同进步!
  最后,感谢您的揽月;

巧-微信公众号-操作返回键问题-angularjs开发 SPA的更多相关文章

  1. 微信公众号API返回不可打印字符的处理。

    引言 在使用微信公众号的"批量获取用户基本信息"API时,发现在某些时候不能使用php的json_decode转为数组,打印出curl获取到的内容中,发现了几个不可打印字符.相信不 ...

  2. Java微信公众号开发

    微信公众平台是腾讯为了让用户申请和管理微信公众账号而推出的一个web平台.微信公众账号的种类可以分为3种,并且一旦选定不可更改.按照功能的限制从小到大依次为:订阅号.服务号.企业号.个人只能注册订阅号 ...

  3. Ionic+AngularJS 开发的页面在微信公众号下显示不出来原因查究

    ionic 页面 微信浏览器遇到的坑 公司的微信公众号一部分页面是用AngularJS+Ioinc开发,发现在本地浏览器测试的时候都没问题,传到服务器在微信公众号下跑就出问题来,经查是: index- ...

  4. requests利用selenium,代理Ip,云打码,验证码抠图操作 爬取搜狗微信公众号内容

    爬取思路,爬取搜狗微信公众号内容,爬取第一层url时请求太快出现验证码,我这里用的蘑菇云代理,并在程序中我判断什么情况下是否+代理,做到合理运用代理ip.爬取第二层url时验证码出现次数更严重(和第一 ...

  5. 线程安全使用(四) [.NET] 简单接入微信公众号开发:实现自动回复 [C#]C#中字符串的操作 自行实现比dotcore/dotnet更方便更高性能的对象二进制序列化 自已动手做高性能消息队列 自行实现高性能MVC WebAPI 面试题随笔 字符串反转

    线程安全使用(四)   这是时隔多年第四篇,主要是因为身在东软受内网限制,好多文章就只好发到东软内部网站,懒的发到外面,现在一点点把在东软写的文章给转移出来. 这里主要讲解下CancellationT ...

  6. 微信公众号使用LocalStorage解决返回缓存问题

    在开发微信公众号上应用程序时,遇到了一个普遍的问题,从A页跳转到B页后,再由B页跳转回A页,A要要保持跟跳转前一致,通过LocalStorage可以解决. LocalStorage,很好的解决了返回的 ...

  7. appium操作微信公众号H5 web页面

    安卓微信公众号的H5页面是webview,一般操作需要切换context. 在执行如下步骤,就能直接像识别native样识别webview 1.代码追加: ChromeOptions options ...

  8. 后台微信开发入口+关键字 回复等 关注公众号回复 注意获取随机Token 微信的对接校验Token保存到数据库的只是做第一次的校验 其他对微信公众号的操作是去缓存中获取7200S的随机Token

    package com.epalmpay.controller.apiweixin; import com.epalmpay.commom.BaseController;import com.epal ...

  9. appium+python自动化-微信公众号webview操作

    前言 上一篇已经解决切换到微信公众号的webview上了,但是定位webview上元素的时候一直提示找不到,打印page_source也找不到页面上的元素,这个问题困扰了一整天,还好最后找到了原因, ...

随机推荐

  1. eclipse+fileSyncPlugin+svn+jenkins+tomcat

    实现一个想法,把项目部署在linux服务器上,在本地的eclipse代码更新后,通过svn+jenkins自动同步到服务器, 然后通过eclipse远程debug项目.这样是不是就解决了在本地跑项目, ...

  2. Python Web框架篇:Django Model ORM(对象关系映射)

    一,基本操作 用于实现面向对象编程语言里不同类型系统的数据之间的转换,换言之,就是用面向对象的方式去操作数据库的创建表以及增删改查等操作. 1.增(create , save): from app01 ...

  3. Java中方法的重载和重置(覆盖)的区别

    简单来说,重载就是在同一类中允许同时存在一个以上的同名方法,只要这些方法的参数个数或类型不同即可,而重置(覆盖)是子类重新定义父类中己经定义的方法,即子类重写父类方法. 方法的重载 方法的重载就是在同 ...

  4. 关于php加密库加密数据上传数据库或解密出错的问题

    php加密拓展库随着php版本的更新,函数的使用方法有所改变,所以加密模式推荐使用ecb,其中加密算法19种,加密模式8种,通过这种方式加密后的数据上传数据库后提取出来进行解密会发现结果是乱码,我认为 ...

  5. JAVAscript学习笔记 jsBOM 第七节 (原创) 参考js使用表

    <html> <head> <title>day02_js</title> <script type="text/javascript& ...

  6. python3 多线程获取数据实例

    import requestsimport jsonfrom retrying import retryfrom lxml import etreefrom queue import Queueimp ...

  7. Hiberante知识点梳理

    Hibernate简介 Hibernat是一个ORM(关系映射)框架,对JDBC访问数据库的操作进行了简化,并且将数据库表中的字段和关系映射为对象,简化了对数据库的操作. 使用方法 读取并解析配置文件 ...

  8. oracle数据库表实现主键自增功能

    有关oracle中自增序列sequence+触发器trigger:实现数据表TABDATA_LIVE_CYCLE中的主键id的自增. CREATE SEQUENCE TABDATA_LIVE_CYCL ...

  9. Maven中settings.xml的配置项说明精讲

    1.Maven的配置文件(Maven的安装目录/conf/settings.xml ) 和 Maven仓库下(默认的Maven仓库的是用户家目录下的.m2文件,可以另行制定)的settings.xml ...

  10. 【python】python的正则表达式 re

    ps:本文摘自互联网,觉得结构很好,讲的也很清晰.记下,备查. 延伸阅读:python的 内建函数 和 subprocess .此文是本系列的第三篇文章了,和之前一样,内容出自官方文档,但是会有自己的 ...