Mobile Angular UI - Aplikasi Pertama Saya

Di bab ini, kita akan membuat aplikasi pertama kita yang akan berjalan di ponsel maupun di desktop.

Pengaturan proyek yang kita buat di bab sebelumnya memiliki struktur berikut -

uiformobile/
   node_modules/
   src/
   package.json
   index.html

Ikuti langkah-langkah untuk membuat UI sederhana menggunakan Mobile Angular UI.

Langkah 1

Tambahkan file css berikut di bagian head html seperti yang ditunjukkan di bawah ini -

<!-- Required for desktop -->
<link rel="stylesheet" href="/node_modules/mobile-angular-ui/dist/css/mobile-angular-ui-hover.min.css" />

<!-- Mandatory CSS -->
<link rel="stylesheet" href="/node_modules/mobile-angular-ui/dist/css/mobile-angular-ui-base.min.css" />

<!-- Required for desktop -->
<link rel="stylesheet" href="/node_modules/mobile-angular-ui/dist/css/mobile-angular-ui-desktop.min.css" />

Selanjutnya tambahkan file js -

<script src="/node_modules/angular/angular.min.js"></script>
<script src="/node_modules/angular-route/angular-route.min.js"></script>
<script src="/node_modules/mobile-angular-ui/dist/js/mobile-angular-ui.min.js"></script>

File index.html akan terlihat sebagai berikut -

<!DOCTYPE html>
<html>
   <head>
      <meta charset="utf-8">
      <title>My App</title>
      <!-- Required for desktop -->
      <link rel="stylesheet" href="/node_modules/mobile-angular-ui/dist/css/mobile-angular-ui-hover.min.css" />

      <!-- Mandatory CSS -->
      <link rel="stylesheet" href="/node_modules/mobile-angular-ui/dist/css/mobile-angular-ui-base.min.css" />

      <!-- Required for desktop -->
      <link rel="stylesheet" href="/node_modules/mobile-angular-ui/dist/css/mobile-angular-ui-desktop.min.css" />
      <script src="/node_modules/angular/angular.min.js"></script>
      <script src="/node_modules/angular-route/angular-route.min.js"></script>
      <script src="/node_modules/mobile-angular-ui/dist/js/mobile-angular-ui.min.js"></script>
   </head>
   <body>
   </body>
</html>

Langkah 2

Kami akan melihat tata letak dasar UI sudut seluler seperti di bawah ini -

<body ng-app="myFirstApp">

   <!-- Sidebars -->
   <div class="sidebar sidebar-left"><!-- ... --></div>
   <div class="sidebar sidebar-right"><!-- ... --></div>

   <div class="app">
   <div class="navbar navbar-app navbar-absolute-top"><!-- Top Navbar --></div>
   <div class="navbar navbar-app navbar-absolute-bottom"><!-- Bottom Navbar --></div>

      <!-- App body -->
         <div class='app-body'>
            <div class='app-content'>
               <ng-view></ng-view>
            </div>
         </div>
      </div><!-- ~ .app -->
   
   <!-- Modals and Overlays -->
   <div ui-yield-to="modals"></div>

</body>

LANGKAH 3

Membuat js/ folder in src/ dan tambahkan app.js untuk itu.

Tentukan modul dan tambahkan UI sudut Seluler dan Rute Sudut sebagai dependensi seperti yang ditunjukkan di bawah ini -

<script type="text/javascript">
   'ngRoute',
      angular.module('myFirstApp', [
      'mobile-angular-ui'
   ]);
</script>

Tambahkan ng-app = ”myFirstApp” ke tag <body> -

<body ng-app="myFirstApp">

Modul mobile-angular-ui memiliki daftar modul berikut -

angular.module('mobile-angular-ui', [
   'mobile-angular-ui.core.activeLinks',      /* adds .active class to current links */
   'mobile-angular-ui.core.fastclick',        /* polyfills overflow: auto */
   'mobile-angular-ui.core.sharedState',      /* SharedState service and directives */
   'mobile-angular-ui.core.outerClick',       /* outerClick directives */
   'mobile-angular-ui.components.modals',     /* modals and overlays */
   'mobile-angular-ui.components.switch',     /* switch form input */
   'mobile-angular-ui.components.sidebars',   /* sidebars */
   'mobile-angular-ui.components.scrollable', /* uiScrollable directives */
   'mobile-angular-ui.components.capture',    /* uiYieldTo and uiContentFor directives */
   'mobile-angular-ui.components.navbars'     /* navbars */
]);

Mobile-angular-ui.min.js, memiliki semua modul inti dan komponen di atas. Anda juga dapat memuat komponen yang diperlukan sesuai kebutuhan Anda daripada memuat seluruh mobile-angular-ui.min.js.

LANGKAH 4

Tambahkan pengontrol ke tag tubuh Anda seperti yang ditunjukkan di bawah ini -

<body ng-app="myFirstApp" ng-controller="MainController">

LANGKAH 5

Dalam tata letak dasar, kami telah menambahkan <ng-view></ng-view>, itu akan memuat tampilan untuk kita.

Mari kita tentukan rute di app.js menggunakan ngRoute. File yang diperlukan untuk perutean sudah ditambahkan di bagian kepala.

Buat folder home / di src /. Tambahkan home.html ke dalamnya dengan detail berikut -

<div class="list-group text-center">
   <div class="list-group-item list-group-item-home">
      <h1>{{msg}}</h1>
   </div>
</div>

Sekarang ketika kita memulai aplikasi, secara default, kita ingin home.html ditampilkan di dalam <ng-view> </ng-view>.

Perutean dikonfigurasi di dalam app.config () seperti yang ditunjukkan di bawah ini -

app.config(function($routeProvider, $locationProvider) {
   $routeProvider
   .when("/", {
      templateUrl : "src/home/home.html"
   });
   $locationProvider.html5Mode({enabled:true, requireBase:false});
});

LANGKAH 6

Kami telah menambahkan {{msg}} di dalam home.html seperti yang ditunjukkan di bawah ini -

<div class="list-group text-center">
   <div class="list-group-item list-group-item-home">
      <h1>{{msg}}</h1>
   </div>
</div>

Mari kita definisikan hal yang sama di pengontrol seperti yang ditunjukkan di bawah ini -

app.controller('MainController', function($rootScope, $scope, $routeParams) {
   $scope.msg="Welcome to Tutorialspoint!"
});

LANGKAH 7

Sekarang jalankan perintah untuk memulai aplikasi menggunakan perintah di bawah ini -

node server.js

LANGKAH 8

Muat aplikasi Anda di http://localhost:3000 di browser -

Anda akan melihat layar berikut dalam mode seluler -

Anda akan melihat layar berikut dalam mode Desktop -

Mari kita pahami detail setiap komponen di Mobile Angular UI di bab-bab berikutnya.

Berikut adalah kode terakhir untuk tampilan di atas. Struktur folder sejauh ini adalah sebagai berikut -

index.html

<!DOCTYPE html>
<html>
   <head>
      <meta charset="utf-8" />
      <title>Mobile Angular UI Demo</title>
      <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
      <meta name="apple-mobile-web-app-capable" content="yes" />
      <meta name="viewport" content="user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimal-ui" />
      
      <meta name="apple-mobile-web-app-status-bar-style" content="yes" />
      <link rel="shortcut icon" href="/assets/img/favicon.png" type="image/x-icon" />
      <link rel="stylesheet" href="node_modules/mobile-angular-ui/dist/css/mobile-angular-ui-hover.min.css" />
      <link rel="stylesheet" href="node_modules/mobile-angular-ui/dist/css/mobile-angular-ui-base.min.css" />
      <link rel="stylesheet" href="node_modules/mobile-angular-ui/dist/css/mobile-angular-ui-desktop.min.css" />
      <script src="node_modules/angular/angular.min.js"></script>
      <script src="node_modules/angular-route/angular-route.min.js"></script>
      <script src="node_modules/mobile-angular-ui/dist/js/mobile-angular-ui.min.js"></script>
      <script src="src/js/app.js"></script>
   </head>

   <body ng-app="myFirstApp" ng-controller="MainController">

      <!-- Sidebars -->
      <div class="sidebar sidebar-left"><!-- ... --></div>
      <div class="sidebar sidebar-right"><!-- ... --></div>

      <div class="app">
         <div class="navbar navbar-app navbar-absolute-top"><!-- Top Navbar --></div>
         <div class="navbar navbar-app navbar-absolute-bottom"><!-- Bottom Navbar --></div>

         <!-- App body -->
         
         <div class='app-body'>
            <div class='app-content'>
               <ng-view></ng-view>
            </div>
         </div>
      </div><!-- ~ .app -->
      
      <!-- Modals and Overlays -->
      <div ui-yield-to="modals"></div>
   </body>

</html>

js/app.js

/* eslint no-alert: 0 */

'use strict';
//
// Here is how to define your module
// has dependent on mobile-angular-ui
//
var app=angular.module('myFirstApp', [
   'ngRoute',
   'mobile-angular-ui'
]);
app.config(function($routeProvider, $locationProvider) {
   $routeProvider
   .when("/", {
      templateUrl : "src/home/home.html"
   });
   $locationProvider.html5Mode({enabled:true, requireBase:false});
});
app.controller('MainController', function($rootScope, $scope, $routeParams) {
   $scope.msg="Welcome to Tutorialspoint!"
});

home/home.html

<div class="list-group text-center">
   <div class="list-group-item list-group-item-home">
      <h1>{{msg}}</h1>
   </div>
</div>