zoukankan      html  css  js  c++  java
  • $ionicConfigProvider

     转自:http://ngionic.com/2014/12/ionic-javascript-api-ionicconfigprovider/

    $ionicConfigProvider

    Ionic会自动根据当前平台来调整使用什么样的过渡方式,或是图标应该显示在顶部或底部等等。例如,新版本的页面过渡效果中,iOS将转变为进入视图时从右边至中间,离开视图时从中间至左边。然而,Android却是进入视图时从底部至中心的过渡,覆盖原来的视图,保持静止的。应当指出的是,当平台不是iOS或Android,那么将默认使用iOS的设置。所以如果你是在桌面浏览器中进行开发的话,会使用iOS的默认配置。

    这些配置可以用 $ionicConfigProvider 在你的APP运行配置中。另外,在app内部和正在运行时 $ionicConfigc也可以设置和获取配置信息。

    通常,所有基本配置变量被放到 'platform'这个属性中,这意味着它会在默认配置的平台上运行的。可以在这个层级设置所有平台同样的配置,所有的平台都使用这些基本的的设置,而不是它的平台的默认配置。下面的代码将在所有平台上设置相同的配置变量:

    $ionicConfigProvider.views.maxCache(10);
    

    此外,每个平台都有它自己的配置在 $ionicConfigProvider.platform 属性中。接下来的配置只针对安卓设备。

    $ionicConfigProvider.platform.android.views.maxCache(5);
    

    用法

    var myApp = angular.module('reallyCoolApp', ['ionic']);
    
    myApp.config(function($ionicConfigProvider) {
      $ionicConfigProvider.views.maxCache(5);
    
      // note that you can also chain configs
      $ionicConfigProvider.backButton.text('Go Back').icon('ion-chevron-left');
    });
    
    当然,你也能发现$ionicConfigProvider.setPlatformConfig(platformName, platformConfigs);
    这个方法,第一个参数为String,平台名称android或者ios,第二个参数为对象。
    比如:
    var configProperties = {
      views: {
        maxCache: 5,
        forwardCache: true,
        transition: 'android'
      },
      navBar: {
     // alignTitle: 'center',
     // positionPrimaryButtons: PLATFORM,
     // positionSecondaryButtons: PLATFORM,
        transition: PLATFORM
      },
      backButton: {
        icon: 'ion-chevron-left',
        text: 'Go Back',
        previousTitleText: false
      },
      form: {
        checkbox: PLATFORM  //试了试貌似没有不同的效果呀,抓脑袋
      },
      tabs: {
        style: 'striped',
        position: 'bottom'
      },
      templates: {
     // maxPrefetch: 0
      }
     };
    $ionicConfigProvider.setPlatformConfig('android', configProperties);

    方法

     

    views.transition(transition)

    切换页面的转换方式。默认 platform.

    ParamTypeDetails
    transition string 什么转换方式你将使用。
    • platform: 根据你应用运行的平台动态选择正确的转换方式。如果平台不是IOS或安卓,那就默认使用IOS.
    • ios: iOS 风格切换页面.
    • android: Android 风格切换页面.
    • none: 不预制件的动画。
    • Returns: string value
     

    views.maxCache(maxNumber)

    视图元素缓存到Dom中的。当超过最大数时,最开始被访问的视图将被删除。视图保存在DOM中会缓存他的视图作用域,当前状态和滚动条的位置。当他被缓存时作用域从$watch 周期断开,而当他再次访问时候又再次链接上了。当缓存的最大数设为0 ,历史打开的页面元素将在页面切换的时候从DOM中移除,并且下次访问也会重新解析,添加到DOM中再次连接上元素。这就是关闭缓存的效果。

    ParamTypeDetails
    maxNumber number 视图保持的. 默认 10.
    • Returns: number Ionic保持多少页面再DOM中,知道有页面从DOM中移除.
     

    views.forwardCache(value)

    默认情况下,我们跳转页面时最近访问视图都已被缓存,当再次访问时,相同的实例数据和DOM元素会被引用。然而,当从历史记录访问,“前进”的观点是从缓存中移除。如果你再次跳转到这个视图,它会创建一个新的DOM元素和控制器实例。基本上,任何视图都是每次重新渲染。设置此配置 true 有缓存而不重置在每个加载。

    ParamTypeDetails
    value boolean  
    • Returns: boolean
     

    backButton.icon(value)

    返回按钮图标。

    ParamTypeDetails
    value string  
    • Returns: string
     

    backButton.text(value)

    返回按钮文本

    ParamTypeDetails
    value string Defaults to Back.
    • Returns: string
     

    backButton.previousTitleText(value)

    如果以前的标题文本应该成为后退按钮的文本。这是iOS默认。

    ParamTypeDetails
    value boolean  
    • Returns: boolean
     

    tabs.style(value)

    Tab 样式.安卓默认 striped ,IOS默认 standard.

    ParamTypeDetails
    value string 可用值包含 striped 和 standard.
    • Returns: string
     

    tabs.position(value)

    Tab 位置. 安卓默认 top IOS默认 bottom.

    ParamTypeDetails
    value string 可用的值为 top 和 bottom.
    • Returns: string
     

    templates.maxPrefetch(value)

    设置$stateProvider.state中定义的templateUrls最大预加载模板数量。如果设置 0,用户打开一个新页面不得不等待页面加载完毕。默认 30.

    ParamTypeDetails
    value integer  $stateProvider.state().定义的templateUrls中最大模板预加载数量
    • Returns: integer

    navBar.alignTitle(value)

    navBar的标题的对齐方式。默认center.

    ParamTypeDetails
    value string navBar的标题的对齐方式
    • platform: 根据你应用运行的平台自动切换正确的标题样式。如果是 ios, 默认 center. 如果是 android, 默认 left. 其他,默认 center.
    • left: 标题在 navBar 左对齐
    • center: 标题在 navBar 居中对齐
    • right: 标题在 navBar 右对齐
    • Returns: string value

    navBar.positionPrimaryButtons(value)

    主导航栏按钮的对齐方式。默认 left.

    ParamTypeDetails
    value string
    • platform: 根据你应用运行的平台自动切换正确的标题样式.如果是 ios, 默认 left.如果是 android,默认 right. 其他默认 left.
    • left: 主导航栏的按钮左对齐
    • right: 主导航栏的按钮右对齐
    • Returns: string value

    navBar.positionSecondaryButtons(value)

    次导航栏按钮的对齐方式. 默认right.

    ParamTypeDetails
    value string
    • platform: 默认 right.
    • left: 次导航栏的按钮左对齐
    • right: 次导航栏的按钮右对齐
    • Returns: string value
  • 相关阅读:
    phxpaxos状态机的管理
    redis基础
    phxpaxos的checkpoint从哪个server同步
    结合phxpaxos简单看下paxos
    levelDB实现相关概念及基础
    在变参模版出现之前,functional如何实现bind功能
    IntelliJ IDEA自动部署项目至远程服务器与传统部署项目至远程服务器的区别
    Python实现王者荣耀小助手(二)
    Python实现王者荣耀小助手(一)
    高性能网络通信框架 HP-Socket
  • 原文地址:https://www.cnblogs.com/1992825-Amelia/p/4846806.html
Copyright © 2011-2022 走看看