Iakz před 2 měsíci
rodič
revize
f865b3fecf

+ 107 - 12
src/app/tab1/tab1.page.html

@@ -1,17 +1,112 @@
-<ion-header [translucent]="true">
-  <ion-toolbar>
-    <ion-title>
-      Tab 1
-    </ion-title>
+<ion-header>
+  <ion-toolbar color="light">
+    <ion-buttons slot="start">
+      <ion-button>
+        <ion-icon name="menu"></ion-icon>
+      </ion-button>
+    </ion-buttons>
+    <ion-segment [(ngModel)]="segmentModel">
+      <ion-segment-button value="follow">
+        关注
+      </ion-segment-button>
+      <ion-segment-button value="recommend">
+        推荐
+      </ion-segment-button>
+      <ion-segment-button value="nearby">
+        附近
+      </ion-segment-button>
+    </ion-segment>
+    <ion-buttons slot="end">
+      <ion-button (click)="search()">
+        <ion-icon name="search"></ion-icon>
+      </ion-button>
+    </ion-buttons>
   </ion-toolbar>
 </ion-header>
 
-<ion-content [fullscreen]="true">
-  <ion-header collapse="condense">
-    <ion-toolbar>
-      <ion-title size="large">Tab 1</ion-title>
-    </ion-toolbar>
-  </ion-header>
+<ion-content>
+  <ion-grid>
+    <ion-row>
+      <ion-col size="6">
+        <!-- Card 1 -->
+        <ion-card>
+          <img src="assets/image1.jpg">
+          <ion-card-content>
+            <ion-card-title>夏季最热门穿搭</ion-card-title>
+            <ion-row>
+              <ion-col size="1">
+                <ion-avatar>
+                  <img src="assets/user-avatar.jpg">
+                </ion-avatar>
+              </ion-col>
+              <ion-col size="9"></ion-col>
+              <ion-col size="2">
+                <ion-button fill="clear" (click)="like()">
+                  <ion-icon name="heart"></ion-icon> 100
+                </ion-button>
+              </ion-col>
+            </ion-row>
+          </ion-card-content>
+        </ion-card>
+      </ion-col>
+      
+      <ion-col size="6">
+        <!-- Card 2 -->
+        <ion-card>
+          <img src="assets/image1.jpg">
+          <ion-card-content>
+            <ion-card-title>夏季最热门穿搭</ion-card-title>
+            <ion-row>
+              <ion-col size="1">
+                <ion-avatar>
+                  <img src="assets/user-avatar.jpg">
+                </ion-avatar>
+              </ion-col>
+              <ion-col size="9"></ion-col>
+              <ion-col size="2">
+                <ion-button fill="clear" (click)="like()">
+                  <ion-icon name="heart"></ion-icon> 200
+                </ion-button>
+              </ion-col>
+            </ion-row>
+          </ion-card-content>
+        </ion-card>
+      </ion-col>
+    </ion-row>
+  </ion-grid>
 
-  <app-explore-container name="Tab 1 page"></app-explore-container>
+  <ion-fab vertical="bottom" horizontal="end" slot="fixed">
+    <ion-fab-button (click)="addNew()">
+      <ion-icon name="add"></ion-icon>
+    </ion-fab-button>
+  </ion-fab>
 </ion-content>
+
+<ion-footer>
+  <ion-toolbar color="light">
+    <ion-buttons slot="start">
+      <ion-button [class.active]="selectedTab === 'home'" (click)="selectTab('home')">
+        <ion-button [routerLink]="'/tabs/tab1'" routerDirection="root">
+          <ion-icon name="home"></ion-icon>
+        </ion-button>
+      </ion-button>
+      <ion-button [class.active]="selectedTab === 'shop'" (click)="selectTab('shop')">
+        <ion-button [routerLink]="'/tabs/tab2'" routerDirection="root">
+          <ion-icon name="cart"></ion-icon>
+        </ion-button>
+      </ion-button>
+    </ion-buttons>
+    <ion-buttons slot="end">
+      <ion-button [class.active]="selectedTab === 'message'" (click)="selectTab('message')">
+        <ion-button [routerLink]="'/tabs/tab3'" routerDirection="root">
+          <ion-icon name="chatbox"></ion-icon>
+        </ion-button>
+      </ion-button>
+      <ion-button [class.active]="selectedTab === 'profile'" (click)="selectTab('profile')">
+        <ion-button [routerLink]="'/tabs/tab4'" routerDirection="root">
+          <ion-icon name="person"></ion-icon>
+        </ion-button>
+      </ion-button>
+    </ion-buttons>
+  </ion-toolbar>
+</ion-footer>

+ 29 - 0
src/app/tab1/tab1.page.scss

@@ -0,0 +1,29 @@
+ion-content {
+  background-color: #fff;
+}
+
+ion-card {
+  margin: 10px;
+}
+
+ion-avatar {
+  width: 30px;
+  height: 30px;
+}
+
+ion-button {
+  --border-radius: 0;
+}
+
+ion-footer {
+  ion-toolbar {
+    ion-button {
+      --background: transparent;
+      --color: black;
+      &.active {
+        font-weight: bold;
+        color: blue;
+      }
+    }
+  }
+}

+ 20 - 2
src/app/tab1/tab1.page.ts

@@ -3,10 +3,28 @@ import { Component } from '@angular/core';
 @Component({
   selector: 'app-tab1',
   templateUrl: 'tab1.page.html',
-  styleUrls: ['tab1.page.scss']
+  styleUrls: ['tab1.page.scss'],
 })
 export class Tab1Page {
+  segmentModel = 'follow';
+  selectedTab = 'home';
 
   constructor() {}
 
-}
+  search() {
+    // Implement search functionality
+  }
+
+  like() {
+    // Implement like functionality
+  }
+
+  selectTab(tab: string) {
+    this.selectedTab = tab;
+  }
+
+  addNew() {
+    // Implement addNew functionality for FAB button
+    console.log('Add new item');
+  }
+}

+ 94 - 12
src/app/tab2/tab2.page.html

@@ -1,17 +1,99 @@
-<ion-header [translucent]="true">
-  <ion-toolbar>
-    <ion-title>
-      Tab 2
-    </ion-title>
+<ion-header>
+  <ion-toolbar color="" class="header">
+    <ion-buttons slot="start">
+      <ion-button>
+        <ion-icon name="menu"></ion-icon>
+      </ion-button>
+    </ion-buttons>
+    <ion-title>User Profile</ion-title>
+    <ion-buttons slot="end">
+      <ion-button>
+        <ion-icon name="scan"></ion-icon>
+      </ion-button>
+      <ion-button>
+        <ion-icon name="settings"></ion-icon>
+      </ion-button>
+    </ion-buttons>
   </ion-toolbar>
 </ion-header>
 
-<ion-content [fullscreen]="true">
-  <ion-header collapse="condense">
-    <ion-toolbar>
-      <ion-title size="large">Tab 2</ion-title>
-    </ion-toolbar>
-  </ion-header>
+<ion-content>
+  <div class="user-profile">
+    <div class="user-info">
+      <img src="assets/user-avatar.jpg" alt="User Avatar">
+      <h3>不吃粉面菜蛋</h3>
+      <p>ID:0210033</p>
+      <p>个人简介</p>
+      <div class="info-icons">
+        <div class="icon-wrapper">
+          <ion-icon name="male"></ion-icon>
+          <span>21</span>
+        </div>
+        <div class="action-buttons">
+          <span>关注 104</span>
+          <span>粉丝 62</span>
+          <span>获赞 896</span>
+        </div>
+      </div>
+    </div>
+    <div class="user-actions">
+      <ion-button color ="rgba(255, 255, 255, 0.4)">
+        <ion-icon name="cart"></ion-icon>
+        购物车
+      </ion-button>
+      <ion-button color="rgba(255, 255, 255, 0.4)">
+        <ion-icon name="document"></ion-icon>
+        我的订单
+      </ion-button>
+      <ion-button color="rgba(255, 255, 255, 0.4)">
+        <ion-icon name="time"></ion-icon>
+        浏览历史
+      </ion-button>
+    </div>
+  </div>
+  <div class="content">
+    <ion-segment>
+      <ion-segment-button value="works" checked>
+        作品
+      </ion-segment-button>
+      <ion-segment-button value="likes">
+        点赞
+      </ion-segment-button>
+      <ion-segment-button value="favorites">
+        收藏
+      </ion-segment-button>
+    </ion-segment>
 
-  <app-explore-container name="Tab 2 page"></app-explore-container>
+    <ion-grid>
+      <ion-row>
+        <ion-col size="4" *ngFor="let item of items">
+          <ion-card>
+            <img src="{{item.image}}" alt="Item Image">
+            <ion-card-content>
+              <ion-icon name="heart"></ion-icon> {{item.likes}}
+            </ion-card-content>
+          </ion-card>
+        </ion-col>
+      </ion-row>
+    </ion-grid>
+  </div>
 </ion-content>
+
+<ion-footer>
+  <ion-toolbar color="light">
+    <ion-buttons slot="start">
+      <ion-button [routerLink]="'/tabs/tab1'" routerDirection="root">
+        <ion-icon name="home"></ion-icon>
+      </ion-button>
+      <ion-button [routerLink]="'/tabs/tab2'" routerDirection="root">
+        <ion-icon name="cart"></ion-icon>
+      </ion-button>
+      <ion-button [routerLink]="'/tabs/tab3'" routerDirection="root">
+        <ion-icon name="chatbox"></ion-icon>
+      </ion-button>
+      <ion-button [routerLink]="'/tabs/tab4'" routerDirection="root">
+        <ion-icon name="person"></ion-icon>
+      </ion-button>
+    </ion-buttons>
+  </ion-toolbar>
+</ion-footer>

+ 76 - 0
src/app/tab2/tab2.page.scss

@@ -0,0 +1,76 @@
+ion-content {
+  background-color: #ffffff;
+}
+
+.header {
+  --background: rgba(166, 66, 253, 0.7); /* 设置顶部工具栏背景色为紫白色渐变的半透明色 */
+  color: #000000; /* 设置文字颜色为白色 */
+}
+
+.user-profile {
+  background: linear-gradient(to bottom, #a870da, #d6d5d6);
+  color: #ffffff;
+  padding: 20px;
+
+  .user-info {
+    text-align: center;
+
+    img {
+      border-radius: 50%;
+      width: 100px;
+      height: 100px;
+    }
+
+    h3 {
+      margin: 10px 0;
+    }
+
+    input {
+      border: 1px solid #ffffff;
+      border-radius: 2px;
+      padding: 5px 10px;
+      margin-bottom: 10px;
+    }
+
+    .info-icons {
+      display: flex;
+      justify-content: center;
+      align-items: center;
+
+      .icon-wrapper {
+        display: flex;
+        align-items: center;
+        margin-right: 10px;
+
+        ion-icon {
+          margin-right: 5px;
+        }
+      }
+
+      .action-buttons {
+        display: flex;
+        span {
+          margin-right: 10px;
+        }
+      }
+    }
+  }
+
+  .user-actions {
+    display: flex;
+    justify-content: center;
+    margin-top: 20px;
+
+    ion-button {
+      background-color: rgba(255, 255, 255, 0.3);
+      color: #000000;
+      border: 1px solid rgba(255, 255, 255, 0.3);
+      margin: 0 60px;
+      width: 140px;
+      height: 80px;
+    }
+  }
+  .user-actions ion-button:hover {
+    background-color: rgba(255, 255, 255, 0.2); /* 鼠标悬停时按钮背景色变为更浅的白色半透明 */
+  }
+}

+ 8 - 2
src/app/tab2/tab2.page.ts

@@ -3,10 +3,16 @@ import { Component } from '@angular/core';
 @Component({
   selector: 'app-tab2',
   templateUrl: 'tab2.page.html',
-  styleUrls: ['tab2.page.scss']
+  styleUrls: ['tab2.page.scss'],
 })
 export class Tab2Page {
+  items: any[] = [
+    { image: 'assets/image1.jpg', likes: 100 },
+    { image: 'assets/image1.jpg', likes: 150 },
+    { image: 'assets/image1.jpg', likes: 120 },
+    // 添加更多项目
+  ];
 
   constructor() {}
 
-}
+}

+ 94 - 12
src/app/tab3/tab3.page.html

@@ -1,17 +1,99 @@
-<ion-header [translucent]="true">
-  <ion-toolbar>
-    <ion-title>
-      Tab 3
-    </ion-title>
+<ion-header>
+  <ion-toolbar color="light" class="header">
+    <ion-searchbar placeholder="搜索"></ion-searchbar>
+    <ion-buttons slot="end">
+      <ion-button>
+        <ion-icon name="ellipsis-horizontal"></ion-icon>
+      </ion-button>
+    </ion-buttons>
+    <ion-button color="light">
+      <ion-icon name="document"></ion-icon>
+      我的订单
+    </ion-button>
+    <ion-button color="light">
+      <ion-icon name="cart"></ion-icon>
+      购物车
+    </ion-button>
+    <ion-button color="light">
+      <ion-icon name="ticket"></ion-icon>
+      红包/卡券
+    </ion-button>
+    <ion-button color="light">
+      <ion-icon name="time"></ion-icon>
+      浏览记录
+    </ion-button>
   </ion-toolbar>
+  
 </ion-header>
 
-<ion-content [fullscreen]="true">
-  <ion-header collapse="condense">
-    <ion-toolbar>
-      <ion-title size="large">Tab 3</ion-title>
-    </ion-toolbar>
-  </ion-header>
+<ion-content>
+  <ion-segment [(ngModel)]="segmentModel">
+    <ion-segment-button value="aiRecommend">
+      AI推荐
+    </ion-segment-button>
+    <ion-segment-button value="seasonHot">
+      当季热门
+    </ion-segment-button>
+    <ion-segment-button value="styleChange">
+      风格转换
+    </ion-segment-button>
+    <ion-segment-button value="selectedProducts">
+      精选商品
+    </ion-segment-button>
+    <ion-segment-button value="favoriteProducts">
+      收藏商品
+    </ion-segment-button>
+  </ion-segment>
 
-  <app-explore-container name="Tab 3 page"></app-explore-container>
+  <!-- Content for each segment -->
+  <ion-grid *ngIf="segmentModel === 'aiRecommend'">
+    <!-- AI推荐内容 -->
+    <ion-row>
+      <ion-col size="6" *ngFor="let item of aiRecommendItems">
+        <ion-card>
+          <img src="{{item.image}}" />
+          <ion-card-content>
+            <ion-label>{{item.label}}</ion-label>
+          </ion-card-content>
+        </ion-card>
+      </ion-col>
+    </ion-row>
+  </ion-grid>
+
+  <ion-grid *ngIf="segmentModel === 'seasonHot'">
+    <!-- 当季热门内容 -->
+  </ion-grid>
+
+  <ion-grid *ngIf="segmentModel === 'styleChange'">
+    <!-- 风格转换内容 -->
+  </ion-grid>
+
+  <ion-grid *ngIf="segmentModel === 'selectedProducts'">
+    <!-- 精选商品内容 -->
+  </ion-grid>
+
+  <ion-grid *ngIf="segmentModel === 'favoriteProducts'">
+    <!-- 收藏商品内容 -->
+  </ion-grid>
 </ion-content>
+
+<ion-footer>
+  <ion-toolbar color="light">
+    <ion-buttons slot="start">
+      <ion-button [class.active]="selectedTab === 'home'" (click)="selectTab('home')">
+        <ion-icon name="home"></ion-icon>
+      </ion-button>
+      <ion-button [class.active]="selectedTab === 'shop'" (click)="selectTab('shop')">
+        <ion-icon name="cart"></ion-icon>
+      </ion-button>
+    </ion-buttons>
+    <ion-buttons slot="end">
+      <ion-button [class.active]="selectedTab === 'message'" (click)="selectTab('message')">
+        <ion-icon name="chatbox"></ion-icon>
+      </ion-button>
+      <ion-button [class.active]="selectedTab === 'profile'" (click)="selectTab('profile')">
+        <ion-icon name="person"></ion-icon>
+      </ion-button>
+    </ion-buttons>
+  </ion-toolbar>
+</ion-footer>

+ 36 - 0
src/app/tab3/tab3.page.scss

@@ -0,0 +1,36 @@
+ion-content {
+  background-color: #fff;
+}
+
+ion-segment-button {
+  color: black;
+}
+
+ion-grid {
+  height: 100%;
+}
+ion-content {
+  background-color: #fff;
+}
+
+ion-card {
+  margin: 10px;
+}
+
+img {
+  width: 100%;
+  height: auto;
+}
+
+ion-label {
+  text-align: center;
+}
+.header{
+  ion-button{
+    align-content: center;
+    margin-top: 5px;
+    margin-bottom: 5px;
+    color: #000000;
+    background-color: white;
+  }
+}

+ 13 - 2
src/app/tab3/tab3.page.ts

@@ -3,10 +3,21 @@ import { Component } from '@angular/core';
 @Component({
   selector: 'app-tab3',
   templateUrl: 'tab3.page.html',
-  styleUrls: ['tab3.page.scss']
+  styleUrls: ['tab3.page.scss'],
 })
 export class Tab3Page {
+  segmentModel = 'aiRecommend';
+  selectedTab = 'shop';
+
+  aiRecommendItems = [
+    { image: 'image_url_1', label: 'Label 1' },
+    { image: 'image_url_2', label: 'Label 2' },
+    // Add more items as needed
+  ];
 
   constructor() {}
 
-}
+  selectTab(tab: string) {
+    this.selectedTab = tab;
+  }
+}

+ 16 - 0
src/app/tab4/tab4-routing.module.ts

@@ -0,0 +1,16 @@
+import { NgModule } from '@angular/core';
+import { RouterModule, Routes } from '@angular/router';
+import { Tab4Page } from './tab4.page';
+
+const routes: Routes = [
+  {
+    path: '',
+    component: Tab4Page,
+  }
+];
+
+@NgModule({
+  imports: [RouterModule.forChild(routes)],
+  exports: [RouterModule]
+})
+export class Tab4PageRoutingModule {}

+ 20 - 0
src/app/tab4/tab4.module.ts

@@ -0,0 +1,20 @@
+import { IonicModule } from '@ionic/angular';
+import { NgModule } from '@angular/core';
+import { CommonModule } from '@angular/common';
+import { FormsModule } from '@angular/forms';
+import { Tab4Page } from './tab4.page';
+import { ExploreContainerComponentModule } from '../explore-container/explore-container.module';
+
+import { Tab4PageRoutingModule } from './tab4-routing.module';
+
+@NgModule({
+  imports: [
+    IonicModule,
+    CommonModule,
+    FormsModule,
+    ExploreContainerComponentModule,
+    Tab4PageRoutingModule
+  ],
+  declarations: [Tab4Page]
+})
+export class Tab4PageModule {}

+ 99 - 0
src/app/tab4/tab4.page.html

@@ -0,0 +1,99 @@
+<ion-header>
+  <ion-toolbar color="light" class="header">
+    <ion-searchbar placeholder="搜索"></ion-searchbar>
+    <ion-buttons slot="end">
+      <ion-button>
+        <ion-icon name="ellipsis-horizontal"></ion-icon>
+      </ion-button>
+    </ion-buttons>
+    <ion-button color="light">
+      <ion-icon name="document"></ion-icon>
+      我的订单
+    </ion-button>
+    <ion-button color="light">
+      <ion-icon name="cart"></ion-icon>
+      购物车
+    </ion-button>
+    <ion-button color="light">
+      <ion-icon name="ticket"></ion-icon>
+      红包/卡券
+    </ion-button>
+    <ion-button color="light">
+      <ion-icon name="time"></ion-icon>
+      浏览记录
+    </ion-button>
+  </ion-toolbar>
+  
+</ion-header>
+
+<ion-content>
+  <ion-segment [(ngModel)]="segmentModel">
+    <ion-segment-button value="aiRecommend">
+      AI推荐
+    </ion-segment-button>
+    <ion-segment-button value="seasonHot">
+      当季热门
+    </ion-segment-button>
+    <ion-segment-button value="styleChange">
+      风格转换
+    </ion-segment-button>
+    <ion-segment-button value="selectedProducts">
+      精选商品
+    </ion-segment-button>
+    <ion-segment-button value="favoriteProducts">
+      收藏商品
+    </ion-segment-button>
+  </ion-segment>
+
+  <!-- Content for each segment -->
+  <ion-grid *ngIf="segmentModel === 'aiRecommend'">
+    <!-- AI推荐内容 -->
+    <ion-row>
+      <ion-col size="6" *ngFor="let item of aiRecommendItems">
+        <ion-card>
+          <img src="{{item.image}}" />
+          <ion-card-content>
+            <ion-label>{{item.label}}</ion-label>
+          </ion-card-content>
+        </ion-card>
+      </ion-col>
+    </ion-row>
+  </ion-grid>
+
+  <ion-grid *ngIf="segmentModel === 'seasonHot'">
+    <!-- 当季热门内容 -->
+  </ion-grid>
+
+  <ion-grid *ngIf="segmentModel === 'styleChange'">
+    <!-- 风格转换内容 -->
+  </ion-grid>
+
+  <ion-grid *ngIf="segmentModel === 'selectedProducts'">
+    <!-- 精选商品内容 -->
+  </ion-grid>
+
+  <ion-grid *ngIf="segmentModel === 'favoriteProducts'">
+    <!-- 收藏商品内容 -->
+  </ion-grid>
+</ion-content>
+
+<ion-footer>
+  <ion-toolbar color="light">
+    <ion-buttons slot="start">
+      <ion-button [class.active]="selectedTab === 'home'" (click)="selectTab('home')">
+        <ion-icon name="home"></ion-icon>
+      </ion-button>
+      <ion-button [class.active]="selectedTab === 'shop'" (click)="selectTab('shop')">
+        <ion-icon name="cart"></ion-icon>
+      </ion-button>
+    </ion-buttons>
+    <ion-buttons slot="end">
+      <ion-button [class.active]="selectedTab === 'message'" (click)="selectTab('message')">
+        <ion-icon name="chatbox"></ion-icon>
+      </ion-button>
+      <ion-button [class.active]="selectedTab === 'profile'" (click)="selectTab('profile')">
+        <ion-icon name="person"></ion-icon>
+      </ion-button>
+    </ion-buttons>
+  </ion-toolbar>
+</ion-footer>

+ 36 - 0
src/app/tab4/tab4.page.scss

@@ -0,0 +1,36 @@
+ion-content {
+  background-color: #fff;
+}
+
+ion-segment-button {
+  color: black;
+}
+
+ion-grid {
+  height: 100%;
+}
+ion-content {
+  background-color: #fff;
+}
+
+ion-card {
+  margin: 10px;
+}
+
+img {
+  width: 100%;
+  height: auto;
+}
+
+ion-label {
+  text-align: center;
+}
+.header{
+  ion-button{
+    align-content: center;
+    margin-top: 5px;
+    margin-bottom: 5px;
+    color: #000000;
+    background-color: white;
+  }
+}

+ 26 - 0
src/app/tab4/tab4.page.spec.ts

@@ -0,0 +1,26 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+import { IonicModule } from '@ionic/angular';
+
+import { ExploreContainerComponentModule } from '../explore-container/explore-container.module';
+
+import { Tab4Page } from './tab4.page';
+
+describe('Tab4Page', () => {
+  let component: Tab4Page;
+  let fixture: ComponentFixture<Tab4Page>;
+
+  beforeEach(async () => {
+    await TestBed.configureTestingModule({
+      declarations: [Tab4Page],
+      imports: [IonicModule.forRoot(), ExploreContainerComponentModule]
+    }).compileComponents();
+
+    fixture = TestBed.createComponent(Tab4Page);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});

+ 23 - 0
src/app/tab4/tab4.page.ts

@@ -0,0 +1,23 @@
+import { Component } from '@angular/core';
+
+@Component({
+  selector: 'app-tab4',
+  templateUrl: 'tab4.page.html',
+  styleUrls: ['tab4.page.scss'],
+})
+export class Tab4Page {
+  segmentModel = 'aiRecommend';
+  selectedTab = 'shop';
+
+  aiRecommendItems = [
+    { image: 'image_url_1', label: 'Label 1' },
+    { image: 'image_url_2', label: 'Label 2' },
+    // Add more items as needed
+  ];
+
+  constructor() {}
+
+  selectTab(tab: string) {
+    this.selectedTab = tab;
+  }
+}

+ 4 - 0
src/app/tabs/tabs-routing.module.ts

@@ -19,6 +19,10 @@ const routes: Routes = [
         path: 'tab3',
         loadChildren: () => import('../tab3/tab3.module').then(m => m.Tab3PageModule)
       },
+      {
+        path: 'tab4',
+        loadChildren: () => import('../tab4/tab4.module').then(m => m.Tab4PageModule)
+      },
       {
         path: '',
         redirectTo: '/tabs/tab1',

+ 4 - 0
src/app/tabs/tabs.page.html

@@ -15,6 +15,10 @@
       <ion-icon aria-hidden="true" name="square"></ion-icon>
       <ion-label>Tab 3</ion-label>
     </ion-tab-button>
+    <ion-tab-button tab="tab4" href="/tabs/tab4">
+      <ion-icon aria-hidden="true" name="cart"></ion-icon>
+      <ion-label>Tab 4</ion-label>
+    </ion-tab-button>
   </ion-tab-bar>
 
 </ion-tabs>

binární
src/assets/image1.jpg


binární
src/assets/image2.jpg


binární
src/assets/image3.jpg


binární
src/assets/user-avatar.jpg