iT邦幫忙

2017 iT 邦幫忙鐵人賽
DAY 8
0
Modern Web

不負責任系列,胡言亂語AngularJS快速上手系列 第 8

[鐵人賽Day8]胡言亂語AngularJS 控制器(Controller)

  • 分享至 

  • xImage
  •  

今天要來提一下,AngularJS Controller
由前面的範例,你可知道AngularJS也是走MVC框架嗎?
疑,真的假的?
呃...那你之前額外建Controller來控制爽的就是了...

在MVC架構裡,Controller負責來溝通Model和View之間的關係,而Model可以在Controller中進行資料處理的過程。
同理,在AngularJS裡,ng-controller主要是view用來和model溝通的橋梁,綁定資料雙向連結

在[鐵人賽Day4]胡言亂語AngularJS 模組(Modules)時有提到
建立Controller,需使用.controller(name, constructor)的物件方法去產生Model
(參考資訊:https://docs.angularjs.org/api/ng/type/angular.Module

那今天的範例我們來個「來站招呼」的例子吧
你的名字~好紅啊~

Welcome
(JS Bin:https://jsbin.com/zuremaxide/1/edit?html,js,output)

Step1.首先,先設置好ng-app=“app”跟ng-controller=“appCtrl”

Step2.在內加入我們這次要用到的標籤

您的名字: <input type="text" ng-model="Name">
招呼語: {{welcome()}}

Step3.接著在Javascript的地方,先設置module給它

var app = angular.module('app',[]);

Step4.在設置Controller
(這裡需注意Controller的名稱跟ng-controller=“angCtrl”需要是一樣的)

app.controller('appCtrl',function($scope){
......
......
......
});

Step5.接著撰寫我們所要用的function welcome

$scope.welcome = function() {
    return "Hello~" + ($scope.Name || "my best friend");
};

呈現畫面:
http://ithelp.ithome.com.tw/upload/images/20161222/200913335xvnEi34Rl.png


上一篇
[鐵人賽Day7]胡言亂語AngularJS 模式(Model)
系列文
不負責任系列,胡言亂語AngularJS快速上手8
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言