Javascript模組化開發學習筆記
學習了阮一峰大神關於javascript模組化開發整理的筆記:
總結:使用require.js只需做三件事情。
1.定義模組
// math.js
define(function (){
var add = function (x,y){
return x+y;
};
return {
add: add
};
});
//如果當前定義的模組還需要依賴其它模組,如下:
define(['myLib'], function(myLib){
function foo(){
myLib.doSomething();
}
return {
foo : foo
};
});
2.載入模組
// main.js
require(['math'], function (math){
alert(math.add(1,1));
});
載入非規範的模組
//舉例來說,underscore和backbone這兩個庫,都沒有采用AMD規範編寫。如果要載入它們的話,必須先定義它們的特徵。
require.config({
shim: {
'underscore':{
exports: '_'
},
'backbone' : {
deps: ['underscore', 'jquery'],
exports: 'Backbone'
}
}
});
//shim屬性,專門用來配置不相容的模組。[也就是自己定義的模組]具體來說,每個模組要定義(1)exports值(輸出的變數名),表明這個模組外部呼叫時的名稱;(2)deps陣列,表明該模組的依賴性。
//比如,jQuery的外掛可以這樣定義:
shim: {
'jquery.scroll': {
deps: ['jquery'],
exports: 'jQuery.fn.scroll'
}
}
3.配置檔案require.config
//path屬性指定各個模組的載入路徑(這種寫法預設主模組和這些模組在同一目錄下)
require.config({
paths: {
"jquery": "jquery.min",
"underscore": "underscore.min",
"backbone": "backbone.min"
}
});
//這種是直接改變基目錄baseUrl
require.config({
baseUrl: "js/lib",
paths: {
"jquery": "jquery.min",
"underscore": "underscore.min",
"backbone": "backbone.min"
}
});
相關推薦
Javascript模組化開發學習筆記
學習了阮一峰大神關於javascript模組化開發整理的筆記: 總結:使用require.js只需做三件事情。 1.定義模組 // math.js define(function (){
play framework如何進行模組化開發--學習筆記(借鑑同事、部落格等資料自己試驗通過!)
1.第一步:先建立一個play專案,我建立play專案時,進入的目錄是:..\playframework\samples-and-tests\,然後開始建立工作。 play new app 2.第二步:建立一個公共模組 play new-module model 建立了
javascript 模組化開發
一、為什麼會有模組化 1. 當一個專案開發的越來越複雜的時候,會遇到一些問題,比如: 命名衝突:當專案由團隊進行協作開發的時候,不同開發人員的變數和函式命名可能相同;即使是一個開發,當開發週期比較長的時候,也有可能會忘記之前使用了什麼變數,從而導致重複命名,導致命
詳解JavaScript模組化開發
什麼是模組化開發? 前端開發中,起初只要在script標籤中嵌入幾十上百行程式碼就能實現一些基本的互動效果,後來js得到重視,應用也廣泛起來了,jQuery,Ajax,Node.Js,MVC,MVVM等的助力也使得前端開發得到重視,也使得前端專案越來越複雜,然而,JavaS
Javascript模組化開發2——Gruntfile.js詳解
一、grunt模組簡介 grunt外掛,是一種npm環境下的自動化工具。對於需要反覆重複的任務,例如壓縮、編譯、單元測試、linting等,自動化工具可以減輕你的勞動,簡化你的工作。grunt模組根據Gruntfile.js檔案中的配置進行任務。 如果在package.json中定義如下命令: "script
node模組化開發基本知識學習筆記
傳統非模組化開發缺點: 1、命名衝突 2、檔案依賴 標準的模組化規範: 1、AMD-requirejs 2、CMD-seajs 伺服器端模組化規範: 1.CommonJS-Node.js 模組化相關的規則: 1、如何定義模組:一個Js檔案就是一個模組,模組內部成員相互獨立 2、模組成員的匯出和引入 nodej
JavaScript中的模組化開發
一、為什麼會有模組化 1. 當一個專案開發的越來越複雜的時候,會遇到一些問題,比如: 命名衝突:當專案由團隊進行協作開發的時候,不同開發人員的變數和函式命名可能相同;即使是一個開發,當開發週期比較長的時候,也有可能會忘記之前使用了什麼變數,從而導致重複命名,導致命名衝突。
JavaScript系列之四:模組化開發
模組化(切記:學習思想) 如果不用模組化編寫程式碼,那麼會具有以下問題: 程式碼雜亂無章,沒有條理性,不便於維護,不便於複用 很多程式碼重複、邏輯重複 全域性變數汙染 不方便保護私有資料(閉包) 模組化的基本實現:閉包的自呼叫函式 //
GTK+圖形化應用程式開發學習筆記(三)—窗體
五、回撥函式 由於程式必須能夠對使用者的操作做出相應,在基於GUI的程式設計中訊號是必要的。移動滑鼠,按下按鈕,敲入正文或者關閉視窗,將給應用軟體的回呼函式提供訊號。訊號可能需要應用軟體來加以處理。如:字處理軟體有使字型變黑的按鈕。如果使用者按下了按鈕,就需要呼叫使字型變黑的程式。與此型別,如果使用者關閉了
GTK+圖形化應用程式開發學習筆記(二)—Glib庫(1)
在學習GTK+之前我們需要先學習一下 glib的有關知識。因為我們將會在以後的學習中遇到這些知識。由於本筆記不是專門介紹glib的,所以下面的介紹不會太詳細。 <?xml:namespace prefix = o ns = "urn:schemas-microsoft
GTK+圖形化應用程式開發學習筆記(十七)—框架構件、比例框架構件
一、框架構件 框架構件(GtkFrame)可以用於在盒子中封裝一個或一組構件,框架本身還可以有一個標籤。標籤的位置和風格可以靈活改變。 我們用gtk_frame_set_label函式建立框架構件。 1. 名稱:: gtk_frame_new 功能: 建立
GTK+圖形化應用程式開發學習筆記(二十)—分欄列表構建
分欄列表構件(GtkCList)是較常用的構件,它是多列列表構件,可以非常方便的處理數千列的資訊。每一列都可以有一個標題,而且可以是活動的。你還可以將函式繫結到列選擇上。 一、建立分欄列表構件 建立GtkCList構件的方法和建立其他構件的方法是類似的。 1. 名
遊戲開發學習筆記三
nor scrip 筆記 nsrunloop posit ppr 遊戲開發 tor http sdk%E6%9B%B4%E6%96%B0%E4%B8%8D%E6%88%90%E5%8A%9F%E6%B1%82%E5%A4%A7%E7%A5%9E%E5%B8%AE%E5%BF
FFmpeg基礎庫編程開發學習筆記——視頻常見格式
format 影片 bps 網上 獲取 lin 捕捉 tails 英文縮寫 聲明一下:這些關於ffmpeg的文章僅僅是用於記錄我的學習歷程和以便於以後查閱,文章中的一些文字可能是直接摘自於其它文章、書籍或者文獻,學習ffmpeg相關知識是為了使用在Android上,
AJAX(Asynchronous JavaScript and XML)學習筆記
微博 chrome 並且 .get 插件 網頁 t對象 end 觸發 基本概念: 1.AJAX不是一種新的編程語言,而是一種使用現有標準的新方法。 2.AJAX最大的優點是在不重新加載整個頁面的情況下,與服務器交換數據並更新部分網頁內容,用於創建快速動態網頁(傳統網頁如果需
監聽器-啟動會初始化表 學習筆記:
監聽器-啟動會初始化表 學習筆記:遇到問題: 數據庫連接問題;後面采用固定寫法: 解決問題 /**c3p0取得數據源*/ public static DataSource getDataSource() throws Exception { ComboPooledDataS
javascript獲取當前時間-學習筆記
javascript獲取當前時間<%@ page language="java" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> &
JavaScript 封裝插件學習筆記(一)
undefined error 精確 屬性。 根據 rip nbsp 類型 alt 此篇只是筆記,在借鑒、參考、模仿的過程,可能不完整,請多指教! 定義插件名稱要註意命名沖突,防止全局汙染。 1.第一種Javascript對象命名:(Javascript語言是“先解析,後運
spring MVC初始化過程學習筆記1
load cati 過程 mage 筆記 ngx 名稱 spring -s 如果有錯誤請指正~ 1.springmvc容器和spring的關系? 1.1 spring是個容器,主要是管理bean,不需要servlet容器就可以啟動,而springMVC實現了servl
西門子PLC-1200 SCL語言開發學習筆記 (一)
選擇 創建 date times 重設 全局 實例 變量 訪問 一、簡介和背景 PLC一般使用梯形圖開發,但是梯形圖適合電工使用而不是程序員使用,對我們來說開發困難,門檻高,幸好PLC的開發標準還帶了類pascal的高級語言,在西門子這裏叫SCL語言,這對於我們程序