标签: ionic2

(Ionic 2)尝试回退到Cordova-lib执行时发生错误:TypeError:无法读取未定义的属性'then'

编辑:当使用离子2时会发生这种情况.我知道它还不稳定,但我认为可能有一些修复,因为看起来其他人没有得到这个问题.编辑结束

出于某种原因,我在尝试构建我的离子应用程序时突然开始出现此错误,使用"ionic build android",以及"ionic build ios":

An Error occurred trying to fall back to Cordova-lib execution: TypeError: Cannot read property 'then' of undefined
at Object.IonicTask.runCordova (/usr/local/lib/node_modules/ionic/lib/ionic/cordova.js:262:21)
at /usr/local/lib/node_modules/ionic/lib/ionic/cordova.js:142:19
at _fulfilled (/usr/local/lib/node_modules/ionic/node_modules/q/q.js:787:54)
at self.promiseDispatch.done (/usr/local/lib/node_modules/ionic/node_modules/q/q.js:816:30)
at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/ionic/node_modules/q/q.js:749:13)
at /usr/local/lib/node_modules/ionic/node_modules/q/q.js:557:44
at flush (/usr/local/lib/node_modules/ionic/node_modules/q/q.js:108:17)
at doNTCallback0 (node.js:430:9)
at process._tickCallback (node.js:359:13)

Error happened [TypeError: Cannot read property 'then' of undefined]
    TypeError: Cannot read property 'then' of undefined
at Object.IonicTask.runCordova (/usr/local/lib/node_modules/ionic/lib/ionic/cordova.js:262:21)
at /usr/local/lib/node_modules/ionic/lib/ionic/cordova.js:142:19
at _fulfilled (/usr/local/lib/node_modules/ionic/node_modules/q/q.js:787:54)
at self.promiseDispatch.done (/usr/local/lib/node_modules/ionic/node_modules/q/q.js:816:30)
at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/ionic/node_modules/q/q.js:749:13) …
Run Code Online (Sandbox Code Playgroud)

android ios ionic-framework ionic2

7
推荐指数
2
解决办法
2623
查看次数

是否有像Gmail应用程序一样的Ionic拉下刷新旋转器?

我知道离子中有"拉下来刷新",但这会拉低观点.

我想看看是否有一个微调器在当前视图前拉下来,就像在Android Gmail应用中发生的那样

对于Android,它被称为SwipeRefreshLayout

在此输入图像描述

AngularJS实现

Alularza Mirian在材料设计中 实现Pull to Refresh的 AngularJS(非Angular 2+)https://github.com/alirezamirian/angular-material-swipe-to-refresh

演示 - 你需要使用DevTools,并在PC上切换到移动模式进行触摸手势这看起来有点笨拙,虽然这是我想要的但是对于Angular 2+

ionic-framework ionic2

7
推荐指数
1
解决办法
3406
查看次数

离子2 - 没有发送Http POST身体参数

我正在使用Ionic 2 Beta 11.我正在尝试向外部API发送请求,该API将返回JSON响应.我已经克服了CORS问题,我正在与API通信但是我无法发送所需的正文信息.我尝试用以下方式格式化body变量,每个都没有成功:

作为对象: {email: this.email, password: this.password}

作为字符串化对象: JSON.stringify({email: this.email, password: this.password})

作为一个字符串: 'email=' + this.email + '&password=' + this.password

这是我的代码:

import {Component}                                      from '@angular/core';
import {NavController, MenuController}                  from 'ionic-angular';
import {Http, Headers, RequestOptions}                  from '@angular/http';
import 'rxjs/Rx';

@Component({
  templateUrl: 'build/pages/login/login.html'
})
export class LoginPage {
  nav: NavController;    
  username: string;
  password: string;

  constructor(nav: NavController, private http: Http) {
    this.nav = nav;
  }

  doLogin() {
    let body = JSON.stringify({
      email: this.username,
      password: this.password });
    let headers = …
Run Code Online (Sandbox Code Playgroud)

http ionic-framework ionic2 angular

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

打字稿:无法找到我的自定义库的模块

问题

当我从'ng2-orm'导入Config时,为什么我的ng2-orm包不被导入(或被vscode识别);

import { NgModule }      from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent }   from './app.component';
import { Config } from 'ng2-orm'; // ng2-orm/Config won't work either

@NgModule({
  imports:      [ BrowserModule ],
  declarations: [ AppComponent ],
  bootstrap:    [ AppComponent ]
})
export class AppModule { }
Run Code Online (Sandbox Code Playgroud)

细节

我正在努力构建我自己的TS库,用于angular2和ionic2.我已经研究和搜索,似乎无法想出为什么这是失败的,这可能只是由于我的某种不完整性.

我知道这只是一个开始,但我认为从项目内部导出的任何东西都应该是可访问的.我需要一个ngModule定义吗?

我提供了package.json,一些文件夹结构,gulp(所以你可以看到它)和tsconfig.json

一切都很精细等等.

但是,当我在角度快速启动时安装它时,它表示当我尝试导入时无法找到ng2-orm.我将所有内容都装入了index.js,并且该软件包位于node_modules文件夹中.

我错过了systemjs.config.js需要的东西吗?我不确定.我有一个typings.json,但它基本上是空的,也许我错过了那里的东西?

index.ts

export * from './Config/Config';
Run Code Online (Sandbox Code Playgroud)

配置/ Config.ts

export class Config {
  public test(): boolean { return true; }
}
Run Code Online (Sandbox Code Playgroud)

定义文件

index.d.ts

export * …
Run Code Online (Sandbox Code Playgroud)

typescript ionic2 angular

7
推荐指数
1
解决办法
4438
查看次数

通过mixpanel中的错误构建iOS应用程序

我在构建iOS应用时收到以下消息:

BUILD FAILED

The following build commands failed:

CompileC build/CareShield.build/Debug-iphonesimulator/CareShield.build/Objects-normal/x86_64/UIImage+MPAverageColor.o CareShield/Plugins/cordova-plugin-mixpanel/Mixpanel/UIImage+MPAverageColor.m normal x86_64 objective-c com.apple.compilers.llvm.clang.1_0.compiler
(1 failure)
Run Code Online (Sandbox Code Playgroud)

但它在Android中运行.我该如何解决?

ionic2 angular

7
推荐指数
1
解决办法
255
查看次数

Ionic 2动画无法在iOS设备上运行

我使用Ionic 2 sidemenu创建了一个项目

$ ionic start mySideMenu sidemenu --v2
Run Code Online (Sandbox Code Playgroud)

我只写了几个代码,只是为了测试它是否适用于iOS设备/模拟器.

page1.ts

import { Component, trigger, state, style, transition, animate } from '@angular/core';

import { NavController } from 'ionic-angular';

@Component({
    selector: 'page-page1',
    templateUrl: 'page1.html',
    animations: [
        trigger('buttonState', [
            state('left', style({ transform: 'translateX(100px)', backgroundColor: 'red' })),
            state('right', style({ transform: 'translateX(0)', backgroundColor: 'blue' })),
            transition('left <=> right', [
                animate('1000ms ease-in-out')
            ])
        ])
    ]
})
export class Page1 {

    state: string = 'left';

    constructor(public navCtrl: NavController) {

    }

    changeState() {
        this.state = this.state == …
Run Code Online (Sandbox Code Playgroud)

sass css3 ionic-framework ionic2 angular

7
推荐指数
1
解决办法
3061
查看次数

ionic2:无法在variables.scss中设置<ion-content>背景颜色

在HTML中:

<ion-content class="bg-style">
Run Code Online (Sandbox Code Playgroud)

在variables.scss中:

.bg-style {
    background-color: #f5f0eb;
}
Run Code Online (Sandbox Code Playgroud)

上面的代码不起作用,但它可以在其他标签等工作<a> <div>,当我把样式文件(.scss,如test.scss)放在与html文件相同的路径时,它也可以正常工作我不知道我的问题是否清楚,谢谢你的帮助.

styles sass ionic2

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

离子使用获取上一页的名称

我正在使用离子2.

我需要获取上一页的名称.

这是我的代码.

 @ViewChild(Nav) nav:Nav
  constructor() {
    this.nav_app.viewDidEnter.subscribe(
      view => console.log("Current opened view is : " + view.name);
    )
  }
Run Code Online (Sandbox Code Playgroud)

我还在

Current opened view is : t
Run Code Online (Sandbox Code Playgroud)

我怎样才能获得以前的页面名称.

请告诉我,

谢谢

ionic2

7
推荐指数
1
解决办法
6987
查看次数

如果*ngIf为真,如何调用函数?

在这里ion-input,我只有item.type==2在列表中才能隐藏items

<ion-input type="text"></ion-input>

<div *ngFor="let item of items">
  <div *ngIf="item.type == 2">
    <span>The End</span>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

我该怎么办呢?

ionic2 angular

7
推荐指数
1
解决办法
3万
查看次数

.share()与.subscribe()_isScalar缺失

我想用share()用subscribe(),但得到错误信息如下.最初,我开始订阅.怎么能解决这个问题?

我的目的是在订阅中执行逻辑.需要共享以防止使用异步管道进行多次调用.

类型'订阅'不能分配给'Observable'类型.
"订阅"类型中缺少"_isScalar"属性.(属性)PostDetailPage.post:Observable

 this.post = this.data.getPostById(this.postId).share().subscribe(data => {
          this.post = data;
      },
      err => {
          console.log("Oops!");
      })
Run Code Online (Sandbox Code Playgroud)

rxjs ionic-framework ionic2 ionic3 angular

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

标签 统计

ionic2 ×10

angular ×6

ionic-framework ×5

sass ×2

android ×1

css3 ×1

http ×1

ionic3 ×1

ios ×1

rxjs ×1

styles ×1

typescript ×1