Giao diện người dùng di động Angular - Ứng dụng đầu tiên của tôi
Trong chương này, chúng tôi sẽ tạo ứng dụng đầu tiên chạy trên thiết bị di động cũng như trên máy tính để bàn.
Thiết lập dự án mà chúng ta đã tạo trong chương trước có cấu trúc như sau:
uiformobile/
node_modules/
src/
package.json
index.html
Làm theo các bước để tạo giao diện người dùng đơn giản bằng Giao diện người dùng góc di động.
Bước 1
Thêm các tệp css sau vào phần đầu html như hình dưới đây -
<!-- 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" />
Tiếp theo, thêm các tệp 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>
Tệp index.html sẽ trông như sau:
<!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>
Bước 2
Chúng ta sẽ thấy bố cục cơ bản của giao diện người dùng góc trên thiết bị di động như bên dưới:
<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>
Bước 3
Tạo một js/ folder in src/ và thêm app.js với nó.
Xác định mô-đun và thêm Giao diện người dùng góc di động và Tuyến đường góc làm phụ thuộc như hình dưới đây -
<script type="text/javascript">
'ngRoute',
angular.module('myFirstApp', [
'mobile-angular-ui'
]);
</script>
Thêm ng-app = ”myFirstApp” vào thẻ <body> -
<body ng-app="myFirstApp">
Mô-đun mobile-angle-ui có danh sách các mô-đun sau:
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-angle-ui.min.js, có tất cả các mô-đun lõi và thành phần ở trên. Bạn cũng có thể tải các thành phần cần thiết theo yêu cầu của mình thay vì tải toàn bộ mobile-angle-ui.min.js.
Bước 4
Thêm bộ điều khiển vào thẻ body của bạn như hình dưới đây -
<body ng-app="myFirstApp" ng-controller="MainController">
Bước 5
Trong bố cục cơ bản, chúng tôi đã thêm <ng-view></ng-view>, điều đó sẽ tải các lượt xem cho chúng tôi.
Hãy để chúng tôi xác định các tuyến đường trong app.js bằng cách sử dụng ngRoute. Các tệp cần thiết để định tuyến đã được thêm vào phần đầu.
Tạo một thư mục home / trong src /. Thêm home.html vào nó với các chi tiết sau:
<div class="list-group text-center">
<div class="list-group-item list-group-item-home">
<h1>{{msg}}</h1>
</div>
</div>
Bây giờ khi chúng tôi khởi động ứng dụng, theo mặc định, chúng tôi muốn home.html được hiển thị bên trong <ng-view> </ng-view>.
Định tuyến được cấu hình bên trong app.config () như hình dưới đây:
app.config(function($routeProvider, $locationProvider) {
$routeProvider
.when("/", {
templateUrl : "src/home/home.html"
});
$locationProvider.html5Mode({enabled:true, requireBase:false});
});
Bước 6
Chúng tôi đã thêm {{msg}} bên trong home.html như được hiển thị bên dưới -
<div class="list-group text-center">
<div class="list-group-item list-group-item-home">
<h1>{{msg}}</h1>
</div>
</div>
Hãy để chúng tôi xác định tương tự trong bộ điều khiển như hình dưới đây:
app.controller('MainController', function($rootScope, $scope, $routeParams) {
$scope.msg="Welcome to Tutorialspoint!"
});
Bước 7
Bây giờ hãy chạy lệnh để khởi động ứng dụng bằng lệnh dưới đây:
node server.js
Bước 8
Tải ứng dụng của bạn tại http://localhost:3000 trong trình duyệt -
Bạn sẽ thấy màn hình sau ở chế độ di động -
Bạn sẽ thấy màn hình sau ở chế độ Máy tính để bàn -
Hãy để chúng tôi hiểu chi tiết về từng thành phần trong Mobile Angular UI trong các chương tiếp theo.
Đây là mã cuối cùng cho màn hình trên. Cấu trúc thư mục cho đến nay như sau:
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>