5 控制器和狀態

2022-05-22 04:48:11 字數 2848 閱讀 4693

1 模組模式

模組模式是用來封裝邏輯並避免全域性命名空間汙染的好方法,匿名函式也可以做到。

在匿名函式的邏輯都在閉包裡面執行,為應用中的變數提供了區域性的作用域和私有的執行環境

(function

())();

2 全域性匯入

定義在模組裡的變數都是區域性變數,因此在全域性命名空間中時無法訪問他們的,然而全域性變數仍都是可用的

(function

($))(jquery);

//匯入jquery

3 全域性匯出

全域性匯出需要用到window

(function

($,exports))(jquery,window);

//匯入jquery,匯入的window,可使用作為匯出變數

4 新增少量上下文

doctype html

>

<

html

>

<

head

>

<

title

>

title

>

<

script

src="js/jquery-2.1.1.js"

>

script

>

<

style

>

#view

.assets

style

>

head

>

<

body

>

<

div

id="view"

>

<

div

class

="assets"

>

div>

div>

body

>

<

script

>

(function

($,exports);

mod.load

=function

(func);

mod.load(

function

());

mod.assetclick

=function

(e);

mod.load(

function

());

})(jquery,window);

//匯入jquery,匯入的window,可使用作為匯出變數

script

>

html

>

(function

($,exports);

mod.fn =mod.prototype;

mod.fn.proxy = function

(func);

mod.fn.load = function

(func);

mod.fn.include = function

(ob);

exports.controller =mod;

})(jquery,window);

(function

($,controller);

mod.load(

function

());

})(jquery,controller);

下面做一些分析:

mod.fn.proxy = function

(func);

上面使用**把func新增到mod原型裡面,與下文的this.proxy(this.toggleclass),一起看,可以知道this.proxy會把toggleclass放到this裡面。

mod.fn.load = function

(func);

load這個function把返回來的function委託給jquery物件

文件載入完後載入控制器

var exports = this

; (

function

($);

mod.create = function

(includes);

result.fn =result.prototype;

result.fn.init = function

(){};

result.proxy = function

(func);

result.fn.proxy =result.proxy;

result.include = function

(obj);

result.extend = function

(obj);

if(includes) result.include(includes);

return

result;

};exports.controller =mod;

//controller 是乙個object,裡面的create是乙個function

})(jquery);

jquery(

function

($)),返回的是乙個function,這個function的入口是init,

//使用init這個function可以把引數都傳到內部

var toggleview =controller.create(,

toggleclass:

function

() });

new toggleview('#view');

});

5 控制器和Action方法

控制器和action方法 原文 1.介紹 控制器的職責 定位並執行action方法,並確保它能正確執行 獲取action方法所需的引數並傳遞給它 捕獲action方法執行期間出現的錯誤 提供 webformviewfactory 類以便生成asp.net頁面型別的檢視。乙個簡單的示例 mvc框架預設...

5 控制器和Action方法

routedata例項的 引數傳給action方法。當引數值無法解析時,若引數時引用或nullable型別,則傳遞null給它,否則則丟擲異常。為了直接訪問url中的資料,控制器提供了request和response類,他們的語義對應於 httprequest 和 httpresponse。下面是乙...

子控制器 和 父控制器

1 新增子控制器很簡單 分兩步 乙個是 view 乙個是 controller 1 self addchildviewcontroller tablectr 2 self.view addsubview tablectr.view 最後不要忘了加一行 tablectr didmovetoparent...