zoukankan      html  css  js  c++  java
  • Ionic4.x 项目结构简单分析

    新建项目

    e2e:端对端测试文件 
    node_modules :项目所需要的依赖包
    resources :android/ios 资源(更换图标和启动动画)
    src:开发工作目录,页面、样式、脚本和图片都放在这个目录下
    www:静态文件,ionic build --prod 生成的单页面静态资源文件
    platforms:生成 android 或者 ios 安装包需要的资源---(cordova platform add android 后 会生成)
    plugins:插件文件夹,里面放置各种 cordova 安装的插件 config.xml: 打包成 app 的配置文件
    package.json: 配置项目的元数据和管理项目所需要的依赖 ionic.config.json、ionic.starter.json:ionic 配置文件 angular.json angular 配置文件
    tsconfig.json: TypeScript 项目的根目录,指定用来编译这个项目的根文件和编译选项 tslint.json:格式化和校验 typescript

    Ionic4.x src 下面文件分析

    app:应用根目录 (组件、页面、服务、模块...) 
    assets:资源目录(静态文件(图片,js 框架...) 
    theme:主题文件,里面有一个 scss 文件,设置主题信息。 
    global.scss:全局 css 文件
    index.html:index 入口文件
    main.ts:主入口文件
    karma.conf.js/test.js:测试相关的配置文件
    polyfills.ts: 这个文件包含 Angular 需要的填充,并在应用程序之前加载

    app.module.ts 分析

    //文件:根模块  告诉ionic如何组装应用
    
    
    //ionic angular的核心文件
    import { NgModule } from '@angular/core';
    import { BrowserModule } from '@angular/platform-browser';
    import { RouteReuseStrategy } from '@angular/router';
    import { IonicModule, IonicRouteStrategy } from '@ionic/angular';
    
    //ionic打包成app以后配置启动画面 以及导航条的服务  (不用管)
    import { SplashScreen } from '@ionic-native/splash-screen/ngx';
    import { StatusBar } from '@ionic-native/status-bar/ngx';
    
    //引入路由配置文件
    import { AppRoutingModule } from './app-routing.module';
    
    //引入根组件
    import { AppComponent } from './app.component';
    
    @NgModule({
      declarations: [AppComponent],  //申明组件
      entryComponents: [], //配置不会在模板中使用的组件
      imports: [BrowserModule, IonicModule.forRoot(), AppRoutingModule],   //引入的模块 依赖的模块
      providers: [  //配置服务
        StatusBar,
        SplashScreen,
        { provide: RouteReuseStrategy, useClass: IonicRouteStrategy }
      ],
      bootstrap: [AppComponent]
    })
    export class AppModule {}

    app-routing.module.ts 分析

    import { NgModule } from '@angular/core';
    //路由相关配置
    import { PreloadAllModules, RouterModule, Routes } from '@angular/router';
    //路由配置
    const routes: Routes = [
      { path: '', loadChildren: './tabs/tabs.module#TabsPageModule' },
      { path: 'button', loadChildren: './button/button.module#ButtonPageModule' }
    ];
    @NgModule({
      imports: [
        RouterModule.forRoot(routes, { preloadingStrategy: PreloadAllModules })
      ],
      exports: [RouterModule]
    })
    export class AppRoutingModule {}
  • 相关阅读:
    AndroidAlarmManager(全局定时器/闹钟)
    Android dialog,activity 屏蔽Home键的教程详解
    实例教程一:电话拨号器
    Android的进程优先级与进程回收详解
    Android Bitmap内存限制
    【30篇突击 android】源码统计七
    在access中支持2个以上left join的方法,又是access的变态规则
    修改vs2005的键盘风格设置
    IE与Firefox的CSS兼容大全(转载)
    实现页面内多个表格在滚动时,表头浮动的效果(是同时多个表格哟)
  • 原文地址:https://www.cnblogs.com/loaderman/p/10944802.html
Copyright © 2011-2022 走看看