标签: ionic-framework

mailto:链接无法在cordova应用程序中在Android上打开邮件应用程序

这真让我抓狂.我正在研究Ionic应用程序(Cordova,Angular等).我有一个联系我们链接,其中包含mailto:href

href="mailto:info@somedomain.net?subject=my%20App"
Run Code Online (Sandbox Code Playgroud)

我已经阅读了无数帖子,说你必须删除

<access origin="*"/>
Run Code Online (Sandbox Code Playgroud)

从项目根目录中的config.xml中替换它:

<access origin="mailto:*" launch-external="true" />
Run Code Online (Sandbox Code Playgroud)

我做过的.当我运行ionic build它时会被添加到config.xml中platforms/android/res/xml.但无论我做什么,链接都不会在任何Android模拟器上打开邮件应用程序(即使在模拟器中配置了电子邮件).

可悲的是,我没有可以测试的设备 - 所以这只是一个模拟器的事情还是我错过了什么?

android cordova ionic-framework ionic

24
推荐指数
3
解决办法
2万
查看次数

禁用滑动以查看sidemenu ionic 2

我正在使用sidemenu ionic 2.当我从左向右滑动此页面时,侧面菜单滑出我需要在特定页面中禁用侧面菜单.

app.html

    <ion-menu [content]="content">
     <ion-content>
      <ion-list>
       <button ion-item *ngFor="let p of pages" menuClose (click)="openPage(p)" >
        <ion-icon name="{{p.icon}}" item-left></ion-icon>
        {{p.title}}
      </button>
     </ion-list>
  </ion-content>
</ion-menu>

<ion-nav id="nav" [root]="rootPage" #content swipeBackEnabled="true"></ion-nav>
Run Code Online (Sandbox Code Playgroud)

page.html我在此页面中禁用了swipemenu,仅在我滑动时禁用

import {Component} from '@angular/core';
import {NavController} from 'ionic-angular';
@Component({
  templateUrl: 'build/pages/portrait/portrait.html'
})
export class Portrait {
}
Run Code Online (Sandbox Code Playgroud)

page.html中

<ion-navbar persianred *navbar>
  <button menuToggle>
    <ion-icon name="menu"></ion-icon>
  </button>
  <ion-title>
   Portrait
  </ion-title>
</ion-navbar>
Run Code Online (Sandbox Code Playgroud)

typescript ionic-framework ionic2 ionic3 angular

24
推荐指数
1
解决办法
2万
查看次数

Ionic - Google地方和自动填充位置

我在Ionic 2的项目上工作,到目前为止我已经实现了地图,但我无法摆脱这一点.为了将Google Place和Autocomplete添加到项目中,我需要按照我应该的方式展示.

我能做什么?

HTML:

<ion-row>
  <ion-item>
    <ion-label>Search</ion-label>
    <ion-input id="places" type="text" name="search"></ion-input>       
</ion-row>
<div #map id="map"></div>
Run Code Online (Sandbox Code Playgroud)

HOME.ts

export class HomePage {

public latitude: number;
public longitude: number;

@ViewChild('map') mapElement;
map: any;
marker: any;
search: string;

constructor(public navCtrl: NavController, public platform: Platform) {
 /*platform.ready().then(() => {
  this.InitMap();
 });*/
}
 ionViewDidLoad(){
 this.InitMap();
}

InitMap() {

  this.setLocation();
  let input = document.getElementById('places');
  let autocomplete = new google.maps.places.Autocomplete(input);

  google.maps.event.addListener(autocomplete, 'place_changed', () => {

    let place = autocomplete.getPlace();
    this.latitude = place.geometry.location.lat();
    this.longitude = place.geometry.location.lng();
    alert(this.latitude + …
Run Code Online (Sandbox Code Playgroud)

javascript google-maps ionic-framework ionic2

24
推荐指数
2
解决办法
2万
查看次数

改变离子中的离子视图标题颜色

我正在使用离子启动菜单模板.我想更改每个页面的标题背景颜色.我目前有:

<ion-view view-title="Search">
  <ion-content>
    <h1>Search</h1>
  </ion-content>
</ion-view>
Run Code Online (Sandbox Code Playgroud)

我试过了:

<ion-view view-title="Search" class="bar bar-header bar-assertive">
  <ion-content>
    <h1>Search</h1>
  </ion-content>
</ion-view>
Run Code Online (Sandbox Code Playgroud)

但它根本不起作用(内容未呈现).该头文件并不能帮助我.这样做的正确方法是什么?

css ionic-framework ionic

23
推荐指数
1
解决办法
6万
查看次数

Git忽略离子项目

我是一些新的应用程序与离子和非常新的存储库的主题,当我做提交无限的文件上传,我发现很难确定项目的变化,这就是为什么我想要求帮助在这里,如果我可以指导你忽略文件,如果一个文件默认存在占用和在哪里,因为大多数工作是在www文件夹中完成的.对不起,如果问题非常基本,但我会很快解决这个问题.

git ionic-framework

23
推荐指数
2
解决办法
1万
查看次数

在Ionic中接收ios的URL

我正在使用离子框架.我正在尝试设置一种方法来接收来自其他应用的网址.比如,您在浏览器中,单击共享,并将链接发送到另一个应用程序(我的应用程序).我找到了这个cordova插件,并将其集成到我的应用程序中.但这是Android的普及.我在IOS中需要相同的功能.

我知道哪个插件需要用于ios

我为Android采取的步骤

1)cordova插件添加git://github.com/Initsogar/cordova-webintent.git 2)检查config.xml文件并找到webintent的代码

<intent-filter>
    <action android:name="android.intent.action.SEND" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="text/plain" />
</intent-filter>
Run Code Online (Sandbox Code Playgroud)

和app.js代码

if (window.plugins && window.plugins.webintent) {
  window.plugins.webintent.getUri(function(url) {
    alert("getUri url:"+url);
  });
}
Run Code Online (Sandbox Code Playgroud)

在ios中对功能相同的任何建议?

谢谢

ios phonegap-plugins cordova ionic-framework ionic

23
推荐指数
2
解决办法
5459
查看次数

ReferenceError:在角度测试中找不到变量:模块

我正在尝试为我的Angular控制器编写一个测试,我正在使用jasmine karmaangular-mocks,但一直在收到错误ReferenceError: Can't find variable: module.

我有一点搜索,但我已经有了angular-mocks我的凉亭.

我在这里可以缺少什么?

以下是我的代码:

#controller
angular.module('cook_book_ctrl', [])
.controller('cookBookCtrl', function($scope, CookBook, CookBookRecipesService){

  $scope.cookbookoptions = true;

  CookBook.list()
   .success(function(data){
     $scope.recipeList = data;
     CookBookRecipesService.loadCookBookRecipes($scope.recipeList);
   })
   .error(function(error){
   })
  });

#controller test
describe('CookBook controller spec', function(){
  var $httpBackend, $rootScope, createController, authRequestHandler

  beforeEach(module('cook_book_ctrl'));
})

#bower.json
{
  "name": "HelloIonic",
  "private": "true",
  "devDependencies": {
    "ionic": "driftyco/ionic-bower#1.0.0",
    "ionic-service-analytics": "master",
    "ionic-service-core": "~0.1.4",
    "angular-mocks": "1.3.13"
  },
  "dependencies": {
    "ng-cordova-oauth": "~0.1.2",
    "ng-tags-input": "~2.3.0",
    "angular": "~1.4.0",
    "underscore": "~1.8.3",
    "materialize": …
Run Code Online (Sandbox Code Playgroud)

javascript testing angularjs karma-jasmine ionic-framework

23
推荐指数
2
解决办法
3万
查看次数

Ionic覆盖特定控制器的所有BACK按钮行为

我希望能够覆盖导航栏上的BACK按钮和硬件按钮.

我希望这个覆盖是针对一个特定的控制器,而不是其他控制器.

  • 当用户移动到另一个屏幕时必须取消它

(使用离子v1.0.0铀 - 独角兽)


我的理由是我有一个项目清单.单击列表将打开一个详细信息页面,其中包含3个选项卡.每个选项卡共享同一个控制器.

但是,在任何这些选项卡上按BACK必须返回主列表.这就是它在本机设备上的工作方式,所以我希望它能够在我的混合应用程序上运行.


在线提供的许多解决方案似乎适用于较旧的beta版本,或者用于控制器之外的注册.

在控制器内部使用Android硬件按钮的常见解决方案是:

$ionicPlatform.registerBackButtonAction(function (event) {
  if($state.current.name=="home"){
    alert("button back");
  }
}, 100);
Run Code Online (Sandbox Code Playgroud)

然而,这似乎不适用于软导航栏按钮,它适用于所有控制器,而不仅仅是一个控制器.

ionic-framework ionic

23
推荐指数
2
解决办法
4万
查看次数

离子2 - 如何管理全局变量?

情况:

在我的Ionic 2应用程序中,我有一个简单的登录,其中包含在右侧菜单中.单击标题中的右侧图标 - 将显示带有登录表单的菜单.

登录代码位于app.component内,登录视图为app.html.成功登录会将布尔全局变量 - loginState - 设置为true.

目标是每个其他组件 - 导入全局变量 - 都可以知道登录状态.

问题是 - 在成功登录后,我需要看到更改立即反映在homePage组件上,但事实并非如此.

例如,在主页上,登录后应立即为您提供某些内容.

代码:

这是我在一个名为global.ts的单独文件中设置全局变量的地方,然后我将其导入其他组件:

export var global = {
    loginState : false
};
Run Code Online (Sandbox Code Playgroud)

app.component:

这是我导入全局变量并在成功登录后将其设置为true的应用程序组件:

import {global} from "./global";

loginSubmit()
{
    var email = this.loginForm.value.email.trim();
    var password = this.loginForm.value.password.trim();

    this.userService.submitLogin(email, password)
        .subscribe((response) => {
            if(response.result == 1) 
            {
                global.loginState = true;
                this.menu.close();
            }
        }, (error) => {
            console.log(error);
        });

}
Run Code Online (Sandbox Code Playgroud)

问题:

应该采取什么方式来处理全局变量的变化,这些变量会立即反映在其他组件上?

我可以从app.component调用homePage组件方法吗?

谢谢!

ionic-framework ionic2 angular

23
推荐指数
1
解决办法
4万
查看次数

Ionic App无法构建Android AAPT错误

我正在创建一个Ionic App,在浏览器中模拟它工作正常,但是一旦我尝试在android上构建它就失败了.看起来像AATP的一些错误,但我无法弄清楚,为什么会发生这种情况......这是错误日志:

Running app-scripts build: --platform android --target cordova
[00:03:39]  build dev started ... 
[00:03:39]  clean started ... 
[00:03:39]  clean finished in 36 ms 
[00:03:39]  copy started ... 
[00:03:39]  deeplinks started ... 
[00:03:39]  deeplinks finished in 46 ms 
[00:03:39]  transpile started ... 
[00:03:43]  transpile finished in 4.22 s 
[00:03:43]  preprocess started ... 
[00:03:43]  preprocess finished in 1 ms 
[00:03:43]  webpack started ... 
[00:03:43]  copy finished in 4.49 s 
[00:03:50]  webpack finished in 6.46 s 
[00:03:50]  sass started ... 
Without `from` …
Run Code Online (Sandbox Code Playgroud)

android ionic-framework angular

23
推荐指数
2
解决办法
2万
查看次数