1. 程式人生 > >QWrap簡介之核心庫定製

QWrap簡介之核心庫定製

提醒:本文最後更新於 2661 天前,文中所描述的資訊可能已發生改變,請謹慎使用。

圍觀過QWrap的同學可能會注意到其官方的特性介紹裡有這麼一條:

提供YUI2一樣的靜態方法庫,同時又用所謂的Helper規範來做到真正的絕對靜態,讓元件開發者可以釋出出無依賴的元件。

其中,元件無依賴化,也就是核心庫定製這個特性,在某些場景下還是非常有用的。QWrap提供了相應的工具來實現,JK這篇文章有詳細說明。只是這個工具藏得很深沒多少人知道,好酒也怕巷子深~ 最近我在這個工具的基礎上增加了程式碼選取的功能,一起再給大家介紹下。

第一步,選擇要用到的方法。這一步比較好理解,例如要用到陣列迭代就選中ArrayH下的forEach,需要格式化日期功能就選擇DateH下的format,依此類推。特別的,Browser(瀏覽器UA相關)、Selector、CustEvent(自定義事件)這三個模組目前是不能拆分的,只能按模組選擇,並不能細化到每個方法。

第二步,選擇Retouch配置。瞭解過QWrap設計的同學應該知道,QWrap是通過不同Retouch配置來決定是否汙染原型的。預設的Core Retouch,會執行以下操作:

mix(Object, QW.ObjectH);//給Object增加靜態方法

mix(QW.ArrayH, QW.HashsetH);//將HashsetH合併到ArrayH
mix(Array, QW.ArrayH);//給Array增加靜態方法
mix(Array.prototype, methodize(QW.ArrayH));//給Array增加原型方法

mix(QW.FunctionH, QW.ClassH);//將ClassH合併到FunctionH
mix(Function, QW.FunctionH);//給Function增加靜態方法 mix(Date, QW.DateH);//給Date增加靜態方法 mix(Date.prototype, methodize(QW.DateH));//給Date增加原型方法 mix(String, QW.StringH);//給String增加靜態方法 mix(String.prototype, methodize(QW.StringH));//給String增加原型方法

在這一步,如果選中了Core Retouch,最終程式碼會根據你選擇的模組,選擇性的把上面那些Retouch新增到最後。

第三步,提取方法。這一步也很簡單,點選按鈕就會根據第一步的選擇、第二步的配置生成方法list。這個list是給第四步抽取程式碼用的,也可以存起來以後再用。

第四步,獲取最終程式碼。這一步更簡單了,點一下按鈕就大功告成,自己體驗下吧~

到這裡,QWrap的無依賴化定製就完成了。通過簡單的四步,就能得到獨一無二的QWrap核心庫。

特別的,如果基於QWrap開發元件,且全部使用QWrap的靜態方法,那這個元件也可以方便的Solo了——把元件用到的所有靜態方法貼到第三步的文字框裡,獲取基於這個元件的定製化核心庫,搞定!

--EOF--

提醒:本文最後更新於 2661 天前,文中所描述的資訊可能已發生改變,請謹慎使用。

相關推薦

QWrap簡介核心定製

提醒:本文最後更新於 2661 天前,文中所描述的資訊可能已發生改變,請謹慎使用。 圍觀過QWrap的同學可能會注意到其官方的特性介紹裡有這麼一條: 提供YUI2一樣的靜態方法庫,同時又用所謂的Helper規範來做到真正的絕對靜態,讓元件開發者可以釋出出無依賴的元件。 其中,元件無依賴化,也就是

QWrap簡介元件編寫

提醒:本文最後更新於 2746 天前,文中所描述的資訊可能已發生改變,請謹慎使用。 QWrap是一個BSD協議下的開源JS框架,前身是百度有啊WED團隊內部使用的BBlib。關於她的設計理念、核心架構,JK和月影兩位同學的部落格上有很多文章。這裡我簡單介紹下實際專案中,如何用QWrap開發元件。 動

JSTL標籤詳細教程——核心

JSTL(JSP Standard Tag Library,JSP標準標籤庫),目前最新版本是1.2,包括四個標籤庫(core、format、xml、sql),這一篇主要講解JSTL的核心庫即core標籤庫,核心庫標籤共有14個,從功能可以分為四大類:邏輯控制、表示式控制

Jstl核心標簽與格式標簽使用

文字 設置 創建 each str2 有時 相對 ram 定向 JSTL(JSP Standard Tag Library。JSP標準標簽庫)是一個不斷完好的開放源碼的JSP標簽庫。是由apache的jakarta小組來維護的。JSTL僅僅能運行在支持J

JSTL標簽的基本教程核心標簽(一)

賦值 作用 條件判斷 arch 標簽庫 輸出 兩個 兩種 前綴 JSTL介紹 Java Server Pages Standard Tag Libray(JSTL):JSP標準標簽庫,它封裝了JSP應用的通用核心功能。JSTL支持通用的、結構化的任務,比

大資料storm(一) --- storm簡介核心元件,工作流程,安裝和部署,電話通訊案例分析,叢集執行,單詞統計案例分析,調整併發度

一、storm簡介 --------------------------------------------------------- 1.開源,分散式,實時計算 2.實時可靠的處理無限資料流,可以使用任何語言開發 3.適用於實時分析,線上機器學習

JSTL標籤核心標籤

一、JSTL標籤庫介紹     JSTL標籤庫的使用是為彌補html標籤的不足,規範自定義標籤的使用而誕生的。使用JSLT標籤的目的就是不希望在jsp頁面中出現java邏輯程式碼 二、JSTL標籤庫的分類 核心標籤(用得最多)國際化標籤(I18N格式

網路程式設計即時通訊程式(聊天室)------(一)通訊流程簡介及通訊協議定製

      在開始講之前,我想先跟大家描述一下,這個所謂的通訊程式具體是一個什麼樣的東西。該通訊程式類似一個弱版本的qq,登入時需要進行註冊,登入成功後,可以實現即時的通訊,群聊,私聊,同時還可傳檔案。先上個圖 服務端:                           

PyScipy:PythonScipy簡介、安裝、使用方法詳細攻略

Scipy庫的簡介     Scipy高階科學計算庫:和Numpy聯絡很密切,Scipy一般都是操控Numpy陣列來進行科學計算,所以可以說是基於Numpy之上了。Scipy有很多子模組可以應對不同的應用,例如插值運算,優化演算法等等。    SciPy是世界上著名的Pyth

python學習easygui 簡介

庫函式介紹: easygui 庫官方連結http://easygui.sourceforge.net/ 點選開啟連結 easygui庫下載連結:http://download.csdn.net/detail/wuce_bai/9456715點選開啟連結 安裝教程: 1.下載

輸入法核心詞典構建

一定的 構建 article 復雜 mil 選擇 font mod rac 拼音輸入法輸出的候選分成兩個部分,系統詞以及短句(智能組詞),智能組詞是通過model以及解碼弄出來的,興許再說。 系統詞就是那些經常使用的詞(詞組)收錄到詞典中,用戶的輸入和詞典中的詞m

python爬蟲從入門到放棄(六) BeautifulSoup的使用

src 表達 支持 正則表達 必須 這樣的 com 子節點 prettify 上一篇文章的正則,其實對很多人來說用起來是不方便的,加上需要記很多規則,所以用起來不是特別熟練,而這節我們提到的beautifulsoup就是一個非常強大的工具,爬蟲利器。 beautifulS

python爬蟲從入門到放棄(八) Selenium的使用

自動 .com 程序 png 都是 例子 等待 點擊 哪些 一、什麽是Selenium selenium 是一套完整的web應用程序測試系統,包含了測試的錄制(selenium IDE),編寫及運行(Selenium Remote Control)和測試的並行處理(Sele

C++ Asio

接收 dal 事件 using target pro std code fine 1 簡介 Asio 是一個跨平臺的 C++ 庫,常用於網絡編程、底層的 I/O 編程等 (low-level I/O),其結構框架如下: 2 使用 Asio 2.1

Docker 學習筆記 核心概念

api rest api 核心概念 log 筆記 try nbsp .com ont Docker核心概念: Docker Daemon Docker Container Docker Registry Docker Client 通過rest API 和Docker

Python爬蟲入門三Urllib的基本使用

res 瀏覽器中 必須 答案 文件的 網頁 one .com 屏幕截圖 1.分分鐘扒一個網頁下來 怎樣扒網頁呢?其實就是根據URL來獲取它的網頁信息,雖然我們在瀏覽器中看到的是一幅幅優美的畫面,但是其實是由瀏覽器解釋才呈現出來的,實質它是一段HTML代碼,加 JS、CSS

Python 基礎 - Day 5 Learning Note - 模塊 標準:datetime (2)

基礎 格式 時間 日期和時間 bin att class ext one 介紹 Datetime 模塊是time模塊的再次封裝,提供了更多的接口。主要是日期和時間的解析,格式化及運算。 其他關於時間的模塊: time - basic calendar - basic

第一篇:Spark SQL源碼分析核心流程

example 協議 bst copyto name 分詞 oop 不同 spl /** Spark SQL源碼分析系列文章*/ 自從去年Spark Submit 2013 Michael Armbrust分享了他的Catalyst,到至今1年多了,Spark SQ

機器學習numpy中常用的函數介紹(一)

做的 string idt 維度 數據 round float 數值 array 1. mat() mat()與array的區別: mat是矩陣,數據必須是2維的,是array的子集,包含array的所有特性,所做的運算都是針對矩陣來進行的。 array是數組,數據可以是多

Win32多線程核心對象

清理 roc dll 擁有 nal cti 多個進程 mutex 依賴   CreateThread()傳回兩個值,用以識別一個新的線程。第一個值是個Handle, 這也是CreateThread()的返回值,大部分與線程有關的API函數都需要它。第二個值是由lpThre