标签: ionic4

强制组件在 ionic v4-beta 中重新渲染

我有一个应用程序,在选项卡栏中有多个按钮组件,用作应用程序的导航。我希望所选选项卡的按钮具有实心填充而不是轮廓,因此我使用了以下 html:

<ion-tab-button #tab1 tab="home" href="/tabs/(home:home)">
  <ion-button class="button-tab" fill="{{toggleState1}}" shape="round">
    <ion-icon name="home"></ion-icon>
  </ion-button>
</ion-tab-button>
Run Code Online (Sandbox Code Playgroud)

对于以下选项卡,此操作会再重复两次。

以及随附的 page.ts (所有内容均在上面导入和声明):

public highlightTab(myTabs) {
this.mainTabs.getSelected().then(data => {
  let selectedTab = data;
  console.log(selectedTab.id);
  if (selectedTab.id = "tab-view-home") {
    this.toggleState1 = "solid";
    this.toggleState2 = "outline";
    this.toggleState3 = "outline";
  }
  else if (selectedTab.id = "tab-view-about") {
    this.toggleState1 = "outline";
    this.toggleState2 = "solid";
    this.toggleState3 = "outline";
  }
  else if (selectedTab.id = "tab-view-contact") {
    this.toggleState1 = "outline";
    this.toggleState2 = "outline";
    this.toggleState3 = "solid";
  }
});
Run Code Online (Sandbox Code Playgroud)

通过一些实验,我发现这个脚本实际上做了我想要它做的所有事情(即使它不是我写过的最漂亮的代码)。唯一的问题是,在以任何组合更改切换状态变量后,按钮实际上不会更新。我在以前版本的 ionic 中找到了几种执行此操作的方法(使用 …

ionic-framework ionic4

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

Ionic 4 beta 18 - 带 routerLink 的 ion-item 和 ion-button 不会更改路线

我刚刚从 ionic 4 beta 17 更新到 18,并引入了一个重大<ion-item>变化<ion-button>。href已替换routerLink

我将其添加到我的代码中,现在路由不再起作用。大多数情况下,编译器会抛出错误并提示,ion-item 中不存在 routerLink。

我做错了什么?还是有棱角的?

"@ionic/angular": "~4.0.0-beta.18",
"@ionic/core": "~4.0.0-beta.18",
"@angular/core": "^7.1.3",
"@angular/router": "~7.1.3",

<ion-item text-wrap class="nav-item" routerDirection="forward" 
        [routerLink]="p.url"
        *ngFor="let p of listOfPages; let i = index"
        [class.active-item]="checkActivePath(p.url)"
        [class.last-item]="i === (listOfPages.length - 1)">
    <ion-label class="nav-label">
        <ion-img [src]="p.icon" class="nav-icon"></ion-img>
        <div class="text-block">
            {{ p.title }}
        </div>
    </ion-label>
</ion-item>
Run Code Online (Sandbox Code Playgroud)

beta ionic-framework angular ionic4 angular7

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

如何在 ionic 4 中的组件之间使用全局或共享样式?

ionic 3中我们使用app.scss文件来编写全局样式。Ionic 4不提供 scss 变量来覆盖ion-inputs背景以及许多其他 css 属性。

我需要将白色背景应用于所有ion-inputs. 目前,我可以通过在每个组件上复制以下 scss 代码来完成此操作:

:host { 
  ion-input {
    --background: white;
  }
}
Run Code Online (Sandbox Code Playgroud)

但我只想把这段代码写在一个地方。scss 文件是做什么的?我必须将该文件导入到某个地方吗?

sass ionic-framework ionic4

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

如何运行加载器直到从 Ionic 4 中的 API 获取响应

我正在我的 Ionic 4 应用程序中工作,并且正在从 API 获取响应。我还将加载器添加到了首页,其中响应来自 API。

我想运行加载程序,直到不再从 API 获取响应为止。

这是我的tab1.page.ts

import { Component, OnInit } from '@angular/core';
import { ChakapiService } from './../service/chakapi.service';
import { LoadingController, Events } from '@ionic/angular';
import { Storage } from '@ionic/storage';

@Component({
  selector: 'app-tab1',
  templateUrl: 'tab1.page.html',
  styleUrls: ['tab1.page.scss']
})

export class Tab1Page implements OnInit {
  detu: any;
  newda: any;
  constructor(public chakapi: ChakapiService, public loadingController: LoadingController, public events: Events,
    private storage: Storage) {
    this.detailsfetch('en');
  }
  ngOnInit() {
  }
  async detailsfetch($langselect) {
    const loading …
Run Code Online (Sandbox Code Playgroud)

ionic-framework angular ionic4

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

menuClose 没有关闭我的左侧菜单

大家好,我目前正在开发一个使用 ionic 的项目,菜单出现的问题比应有的要多。

最近我一直在尝试添加菜单关闭属性,但我把它放在哪里似乎并不重要。我一直通过单击操作、离子项目前置和其他失败的尝试来放置它。

下面是我的 app.component.html 的一段代码

<ion-menu contentId="potifyMenu" side="start">
  <ion-header>
    <ion-toolbar>
      <ion-title>Additional Resources</ion-title>
    </ion-toolbar>
  </ion-header>
  <ion-content>
    <ion-list>
      <ion-item>
        <ion-button menuClose expand="full" (click)="map_go()">
          <ion-icon name="checkmark-circle-outline"></ion-icon> Completed Work Orders
        </ion-button>
      </ion-item>


      <ion-item>
        <ion-button expand="block" fill="outline" menuClose ion-item (click)="complete_go()">
          <ion-icon name="checkmark-circle-outline"></ion-icon> Completed Work Orders
        </ion-button>
      </ion-item>
      <ion-item>
        <ion-button expand="full" ion-button menuClose (click)="complete_go()">
          <ion-icon name="checkmark-circle-outline"></ion-icon> Cmpleted Work Orders
        </ion-button>
      </ion-item>

      <ion-item>
        <ion-button expand="full" menuClose (click)="complete_go()">
          <ion-icon slot="start" name="checkmark-circle-outline"></ion-icon> Completed Work Orders
        </ion-button>
      </ion-item>


    </ion-list>
  </ion-content>
</ion-menu>
Run Code Online (Sandbox Code Playgroud)

ionic-framework ionic4

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

无法检查我的滑块是否已到达 Ionic4 中的最后一张幻灯片

我正在我的 Ionic 4 应用程序中工作,我已经使用循环添加了滑块,我正在检查滑块是否已到达最后一个滑块,并且我已经检查过使用,isEnd()但它始终显示 true。

这是我的intro.page.html

<ion-slides #slides pager="true" parallax="true" spaceBetween="0">
    <ion-slide class="step-one" *ngFor="let item of splashdata">
    </ion-slide>
  </ion-slides>
  <p class="myp2" (click)="next()">{{ NextSlide }}</p>
Run Code Online (Sandbox Code Playgroud)

在此视图中,我在循环中显示滑块,还显示下一步和完成按钮。如果滑块到达最后一张幻灯片,它将显示完成,否则它将显示下一张。

这是我的intro.page.t

export class IntroPage implements OnInit {
  @ViewChild('slides') slides: IonSlides;
  NextSlide: any;
  constructor() { }

  ngOnInit() {}

  ionViewWillEnter(){
    let me = this;
    me.slides.isEnd().then((istrue) => {
      console.log(istrue);
      if (istrue) {
        me.NextSlide = 'Finish';
      } else {
        me.NextSlide = 'Next';
      }
    });
  }

  next() {
    this.slides.slideNext();
  }
}
Run Code Online (Sandbox Code Playgroud)

在此 ts 文件中,我已使用进行了检查, …

ionic-framework ion-slides angular ionic4

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

如何在禁用状态下自定义离子范围?

有没有办法在禁用属性处于活动状态的情况下自定义离子范围?

用作ion-range视觉提示来显示用户在(订单)流程中的位置。用户将无法选择更改范围,因此disabled添加了该属性。此属性会覆盖所有自定义颜色 css。但我找不到disabledcss 来再次覆盖它以达到所需的结果。

这是自定义的CSS ion-range。次要颜色是下面看到的绿色。

在此输入图像描述

ion-range在用户无法控制滑块的情况下,我们能达到下面想要的结果吗?

<ion-range value="{{ range }}" min="0" max="2" color="secondary" disabled></ion-range>
Run Code Online (Sandbox Code Playgroud)

结果(具有禁用属性)

结果

期望的结果(没有残疾财产)

期望的结果

编辑

由于您无法更改禁用属性及其 CSS 变量,因此我们希望在用户不使用指针或触摸控制的情况下显示滑块。

ionic-framework ionic4

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

ionic4 应用程序生成没有 www 文件夹的 iOS 文件

我正在使用 ionic CLI 版本 4.12.0 创建应用程序,当我使用此命令ionic Cordova platform add ios ionic CLI 添加我的应用程序的 Xcode 文件时,但是当我在真实设备上运行该应用程序时,我收到此错误 ERROR: Start Page at 'www/index.html' was not found。和

Internal navigation rejected - <allow-navigation> not set for url='about:blank'
Run Code Online (Sandbox Code Playgroud)

我认为我的 ionic CLI 不会像 ionic3 CLI 那样生成 www 文件夹文件,是否缺少某些内容。www 文件夹完全是空的,并且未显示在 Xcode 文件中

xcode cordova ionic-framework ionic-native ionic4

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

运行子进程 npm 时出错。离子启动

我尝试开始一个新的离子项目。我做了这些步骤

1.npm install -g @ionic/cli

2.离子启动

我得到了与 npm 相关的错误。我搜索但找不到解决方案。

npm WARN 已弃用 request@2.88.2:请求已被弃用,请参阅https://github.com/request/request/issues/3142 npm WARN registryhttps://registry.npmjs.org/ 的意外警告:杂项警告 EINTEGRITY :想SHA512-F4TxbIf2Zho1u0gkwk7pMZkuAOcjie2Ifj9Txahek0JAUamP58o + 0YUlXp2xApo68CRZSFS4nMA5h897G2Q93A ==但得到SHA512-T7rpJR5srgZoHOMh8Kv1DDE6mbnW43SNUk9aRhPXGCfF2iJZoTEItjVYHC / gvtncRQCksb8Tk6f72HLaB6la0A ==:SHA512,F4TxbIf2Zho1u0gkwk7pMZkuAOcjie2Ifj9Txahek0JAUamP58o + 0YUlXp2xApo68CRZSFS4nMA5h897G2Q93A ==完整性校验和使用SHA512时失败。(50573 字节)npm WARN 注册表使用来自https://registry.npmjs.org/ 的陈旧数据由于重新验证期间的请求错误。npm WARN deprecated core-js@2.6.11: core-js@<3 不再维护,由于问题数量不推荐使用。请将您的依赖项升级到 core-js@3 的实际版本。npm 错误!cb() 从未调用过!

npm 错误!这是 npm 本身的错误。请在以下位置报告此错误:npm ERR! https://npm.community

npm 错误!可以在以下位置找到此运行的完整日志:npm ERR!C:\Users\Admin\AppData\Roaming\npm-cache_logs\2020-05-05T06_02_58_568Z-debug.log [ERROR] 运行子进程 npm 时出错。

npm reactjs ionic-framework ionic4

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

尝试在 Ionic 中使用本机文件时,类型“FileOriginal”不可分配给“Provider”类型

我正在尝试将 PDFMaker 用于我的 Ionic 5 项目。1 先决条件是使用 Native File 和 FileOpener。当我尝试导入模块时,出现以下错误:

“FileOriginal”类型不能分配给“Provider”类型。

应用模块

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { RouteReuseStrategy } from '@angular/router';

import { IonicModule, IonicRouteStrategy } from '@ionic/angular';
import { SplashScreen } from '@ionic-native/splash-screen/ngx';
import { StatusBar } from '@ionic-native/status-bar/ngx';
import { QRScanner } from '@ionic-native/qr-scanner/ngx';

import { AppComponent } from './app.component';
import { AppRoutingModule } from './app-routing.module';
import { SideMenuComponent } from './components/side-menu/side-menu.component';
import { HttpClientModule, HttpClient } from …
Run Code Online (Sandbox Code Playgroud)

typescript ionic-framework angular ionic4

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