2014-07-03 10:24 PM 7 16,323
TypeScript是強型別的世界,透過預先宣告物件、屬性、方法、介面,在編輯階段提供Intellisense提示、Go Definition、Find All References、Rename... 等編譯式語言才有的功能,而編譯時可預先抓出參數、型別、方法錯誤,降低執行階段發現修復的高昂成...
2014-07-02 10:22 PM 8 16,444
網友kcw問了一個好問題,提到計算型屬性函數出現會重覆執行兩次的現象! 一句話點醒我夢中人,嚇得我屁滾尿流失了魂~~~ 花了點時間研究,才發現原來我學藝不精,一直沒搞通Angular的屬性相依運作原理,時常誤用KO概念思考。謝謝kcw的問題,讓我釐清一塊暗藏地雷的危險地帶。(註: 相依性追...
2014-07-02 07:53 AM 2 7,806
題目: 使用NG復刻KO範例7 - visible, disable, css繫結 Live Demo <!DOCTYPE html> <html ng-app="sampleApp"> <head...
2014-07-01 10:00 PM 1 6,124
接獲報案,在Visual Studio 2012若建立HTML Application with TypeScript專案(如下圖),.ts可順利產生.js及.js.map,運作正常。 但是若建立的是一般ASP.NET網站專案(Visual C#/Web下的項目),可以新增及編輯.ts,編...
2014-06-29 10:39 PM 0 5,821
第16馬,石碇馬拉松。 馬拉松是一種運動,夏天的馬拉松是一種"極限運動",在夏天跑山路馬是一種"燃燒生命的極限運動"... Orz 當石碇馬拉松的簡章出來,明知是盛夏,明知有爬不完的山路,衝著石碇離家不遠,又是七小時關門,手一滑就報了名。老早報好名,...
2014-06-28 08:57 AM 0 10,946
考慮以下JavaScript函式(myText): /// <reference path="../Scripts/jquery-2.1.1.js" /> function myText(selector, valueOrFunction) { //未指定第...
2014-06-25 10:17 PM 2 9,375
接獲報案,由Oracle資料庫讀取NUMBER(14,6)欄位,原值為1.997748,JSON轉換送至Client端變成1.9977479999999999! 判斷這是典型浮點數問題(順便複習: 算錢用浮點,遲早被人扁),但檢視程式,OracleCommand執行查詢,由NUMBER(14,...
2014-06-24 07:43 AM 2 11,536
實做對象: KO範例6 - 陣列元素的新增/移除事件。 Live Demo <!DOCTYPE html> <html ng-app="sampleApp"> <head&...
2014-06-23 07:00 AM 3 9,405
MVVM基本功,KO範例4 - 以清單方式呈現資料。 <!DOCTYPE html> <html ng-app="sampleApp"> <head> ...
2014-06-22 10:11 AM 2 13,053
復刻對象: KO範例3 - 動態新增下拉選單選項。 先示範一個失敗寫法。在KO範例裡,新增選項按鈕不包含在ViewModel範圍內,而是透過jQuery click事件在選項集合新增物件,而選項集合是ko.observabelArray(),KO能感測到新增動作,同步增加下拉選單選項;但同樣做...
2014-06-21 08:52 AM 5 16,869
復刻對象: KO範例2 - 下拉選單。 在NG,下拉選單(<select>)跟<input>一樣用ng-model="..."建立雙向繫結,如要透過繫結動態產生選項,可用ng-options Directive。ng-options的語法較特別,需...
2014-06-20 09:25 PM 0 8,188
記得四年前微軟就正式宣告建議大家不要再用System.Data.OracleClient,改用ODP.NET。當時Oracle對LINQ支援還不太好,想用LINQ或EF得尋求3rd Party解決方案,從ODAC 11.2起,Entity Framework已是ODP.NET標準配備,Syste...
2014-06-18 07:22 AM 1 9,659
進行Angular單元測試時,在Class Library(類別庫)新增TypeScript測試檔,使用Chutzpah測試正常,但我發現Class Library專案裡的TypeScript,不像在ASP.NET Web專案裡會自動產生.js檔,Chutzpah似乎是靠自己的機制編譯TypeS...
2014-06-17 07:17 AM 0 17,990
自動測試是AngularJS架構的重要一環,官方文件有專章討論單元測試,程式庫則有ngMock提供單元測試所時的DI及Mocking(假物件模擬)支援。本篇將討論如何在Visual Studio 2013對Controller及ViewModel進行單元測試。 開始之前,Visual Stud...
2014-06-16 10:47 PM 22 36,867
用Angular維護的SPA專案重頭戲都在前端,為避免JavaScript愈寫愈亂,失控長成哥吉拉的災難上演,決心在專案改用TypeScript,期望靠著強型別編譯檢查保平安。這裡就以上一篇文章的簡單NG程式為例,示範如何用Visual Studio 2013 Update 2 + TypeScr...
2014-06-15 12:14 PM 0 26,543
MVVM是前端Framework的重要功能,AngularJS當然也有強大好用的資料繫結及模板(Template)機制,才能橫掃江湖。我們就從最簡單的"計算型屬性"開始,順便介紹Angular程式的基本架構。 (註: AngularJS採取的應該是MVC設計模式,但依我的理解,資料繫結、模板...