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...