【问题标题】:All declarations of ‘local' must have identical modifers in ionic 2“local”的所有声明必须在 ionic 2 中具有相同的修饰符
【发布时间】:2016-10-05 18:10:51
【问题描述】:

当我与local:storage 变量一起使用时出现此错误。 我只是想注意到那是在一个小时之前发生的。在此之前它运行良好。

当我尝试通过“离子服务”运行应用程序时显示此错误。

这是我的服务

import { Injectable } from '@angular/core';
import { Http } from '@angular/http';
import 'rxjs/add/operator/map';
import {NavController} from "ionic-angular";

import { Storage } from '@ionic/storage';
/*
  Generated class for the Myservice provider.

  See https://angular.io/docs/ts/latest/guide/dependency-injection.html
  for more info on providers and Angular 2 DI.
*/
@Injectable()
export class MyService {

  public local:Storage;
  public getsession: any;


  constructor(public http: Http,private local: Storage,private navCtrl:NavController) {
    this.local=new Storage();

  }
  postLogin(data){
    let link = "http://adirzoari.16mb.com/login.php";
    return this.http.post(link,data)
        .map(res => res.json())
  }
  checkToken(){
    return this.getsession =this.local.get('token');

  }
  getData(){
    let link = "http://adirzoari.16mb.com/selectNotes.php";
    return this.http.get(link)
        .map(res=>res.json())
  }
  postInsert(data){
    let link="";
    return this.http.post(link,data)
        .map(res=>res.json())
  }
  postUpdate(data){
    let link="";
    return this.http.post(link,data)
        .map(res=>res.json())
  }
  postDelete(data){
    let link = "http://adirzoari.16mb.com/deleteNotes.php";
    return this.http.post(link,data)
        .map(res => res.json())
  }
}

此外, 我得到这个错误

【问题讨论】:

    标签: angular typescript ionic-framework ionic2


    【解决方案1】:

    这是因为你也有本地声明为public local:Storage;,并且在构造函数中也声明为私有,如下所示:

    constructor(public http: Http,private local: Storage,private navCtrl:NavController) {
    

    修复

    删除public local:Storage;

    【讨论】:

    • 感谢您的评论,我更改了它,但我从导出的类中得到新的错误返回类型的公共方法已经或正在使用名称'observable'....我只是上传照片并再次编辑帖子
    【解决方案2】:

    我改变了它,但我得到了公共方法的新错误返回类型 导出的类已经或正在使用名称'observable'...

    为了解决这个问题,您需要显式导入Observable 类:

    import { Injectable } from '@angular/core';
    import { Http } from '@angular/http';
    import 'rxjs/add/operator/map';
    import { Observable } from "rxjs/Observable"; // <- add this import
    import {NavController} from "ionic-angular";
    

    【讨论】:

    • 感谢@sebferreras 它解决了我的问题。你能看看我的项目的这个新问题吗? stackoverflow.com/questions/39856720/…
    • 很高兴能帮上忙 :) 当然,我会看看
    • @sebaferreras 谢谢,希望你能为我找到解决方案
    猜你喜欢
    • 2021-05-29
    • 2019-04-25
    • 2018-11-11
    • 2017-08-13
    • 2023-03-21
    • 2017-11-15
    • 2018-04-18
    • 1970-01-01
    • 2017-07-14
    相关资源
    最近更新 更多