Blockly培訓案例-Simple Blockly

Simple Blockly

通過刪除文件桶唐,大家發(fā)現其實blockly-master文件中很多文件并不是必不可少的黔龟,通過Simple Blockly案例,梳理Blockly的文件目錄到踏,實現精簡版的Blockly援奢。

1. 準備工作

(1)HTML知識準備

最小的HTML文檔:

<!DOCTYPE>                       //定義文檔的類型
<html>                           //定義一個 HTML 文檔
<head>                           //定義關于文檔的信息
    <meta charset="utf-8">       //對于中文網頁,聲明編碼脐湾,否則會出現亂碼
    <title>文檔標題</title>       //定義文檔的標題
</head>

<body>                           //定義文檔的主體
    文檔內容......
</body>

</html>

除了上述最小HTML文檔中包含的內容闻鉴,我們會用到還有:

Script標簽,定義客戶端腳本
<script src="helloworld.js"></script>
Link標簽茂洒,鏈接樣式表
<link rel="stylesheet" type="text/css" href="theme.css">

根據上述內容孟岛,完成下面的小案例,要求:

  • 在最小HTML文檔的基礎上督勺,顯示HelloWorld渠羞;
  • 通過內部js腳本控制彈框輸出HelloWorld;
  • 通過外部js腳本控制彈框輸出HelloWorld智哀;
/**示例代碼**/
<!DOCTYPE>
<html>
<head>
    <meta charset="UTF-8">
    <title>HelloWorld</title>
    <!--<script>
        alert("Hello World!");
    </script>-->
    <script src="alert_helloworld.js"></script>
</head>
<body>
    Hello World!
</body>
</html>
(2)blockly-master文件準備

2. 動手實踐

(1)新建文件目錄

新建一個文件夾堵未,重命名為SimpleBlockly,并在文件夾中新建css盏触,js兩個子文件夾,將blockly-master/Demos/Code中的index.html復制到SimpleBlockly根目錄下,如下圖:


新建文件目錄
(2)導入赞辩、調整文件

使用notepad++打開index.html文件雌芽,修改head部分的內容,并將head部分的涉及的內容辨嗽,從blockly-master中復制添加到SimpleBlockly中的css和js文件夾中世落。

  • 將title修改為Simple Blockly;
  • 將blockly-master/demos/code文件中的style.css文件移至css文件夾中糟需,并將href引號中對應的字符串改為"css/style.css"屉佳;
  • storage.js直接刪除即可,它和Google的Clound Storage有關洲押,案例中用不會涉及這部分功能武花;
  • 將blockly-mater文件中的blockly_compressed.js文件移至js文件夾中,并將src引號中對應的字符串改為"js/blockly_compressed.js";
  • 將blockly-mater文件中的blockls_compressed.js文件移至js文件夾中杈帐,并將src引號中對應的字符串改為"js/blockls_compressed.js";
  • 將blockly-mater文件中的javascript_compressed.js文件移至js文件夾中体箕,并將src引號中對應的字符串改為"js/javascript_compressed.js";
  • 將blockly-mater文件中的python_compressed.js文件移至js文件夾中,并將src引號中對應的字符串改為"js/python_compressed.js";
  • 將blockly-mater文件中的php_compressed.js文件移至js文件夾中挑童,并將src引號中對應的字符串改為"js/php_compressed.js";
  • 將blockly-mater文件中的lua_compressed.js文件移至js文件夾中累铅,并將src引號中對應的字符串改為"js/lua_compressed.js";
  • 將blockly-mater文件中的dart_compressed.js文件移至js文件夾中,并將src引號中對應的字符串改為"js/dart_compressed.js";
  • 將blockly-master/demos/code文件中的code.js文件移至js文件夾中站叼,并將src引號中對應的字符串改為"js/code.js";

此步的目的是將Blockly相關文件的位置進行調整娃兽,并且修改html部分代碼,讓其能指向對應文件尽楔;找文件的一個技巧:".."代表返回父文件目錄投储,文件前沒有內容的話,就表明和html文件在同一文件夾下翔试。

上述操作完成之后轻要,保存html文件,并在瀏覽器中打開:


文件導入調整完成之后

如上圖垦缅,比較直觀的可以看出Toolbox并未顯示出來冲泥。文件明明已經導入并調整好了,為什么還會出現這種情況壁涎?我們可以借助Chrome瀏覽器的“檢查”功能凡恍,查看出現問題的原因:


Chrome瀏覽器Console

在上圖中,發(fā)現有幾個錯誤怔球,仔細看這些錯誤嚼酝,發(fā)現除了media文件相關的錯誤之外,出現頻率較高的就是msg相關的錯誤竟坛。

對比之前的“刪除文件”案例闽巩,在刪除media或msg文件夾之后的現象钧舌。

msg文件這么重要嗎?它有什么功能涎跨?
對于msg文件洼冻,可分為2部分,一部分blocks的msg文件隅很,負責blocks語言的轉換撞牢;一部分是category的msg文件,負責category語言的轉換叔营;
如何解決這種情況屋彪?
a. 方案
分別導入blocks和category的en.js文件;(可分別添加绒尊,然后刷新兩個文件對界面的影響)畜挥;界面轉換成中文(兩個zh-hans.js文件導入)。
b.方案
通過a.方案可以實現基本功能垒酬,達到預期的效果砰嘁,不過語言轉換功能就失效了;如果需要完整的功能勘究,就要通過code.js文件修改矮湘,直接進行調整msg文件指向的路徑;

/**在修改code之前口糕,需要了解一個基礎知識**/
document.write("test");
/**可以在demo2-1中進行測試缅阳,不過要區(qū)分與code.js中代碼的細微區(qū)別**/

先將根目錄下的msg文件和code目錄下的msg文件,分別拷貝到SimpleBlockly/msg文件中景描,為方便區(qū)分十办,分別重命名為blocks-msg和category-msg,然后修改code.js中的代碼指向這些文件超棺。刷新網頁向族,即可正常工作。

// Load the Code demo's language strings.
document.write('<script src="msg/category-msg/' + Code.LANG + '.js"></script>\n');
// Load Blockly's language strings.
document.write('<script src="msg/blocks-msg/' + Code.LANG + '.js"></script>\n');
(3)媒體文件的導入

通過查看Chrome的Console棠绘,發(fā)現media文件缺失件相,導致界面有裂圖。所以將media文件拷貝到SimpleBlockly文件的目錄中氧苍,然后修改html和code.js文件中的media對應路徑即可夜矗。

code.js文件中的media文件對應第420行

至此,Simple Blockly就大功告成了让虐!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末紊撕,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子赡突,更是在濱河造成了極大的恐慌对扶,老刑警劉巖区赵,帶你破解...
    沈念sama閱讀 218,858評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現場離奇詭異辩稽,居然都是意外死亡惧笛,警方通過查閱死者的電腦和手機,發(fā)現死者居然都...
    沈念sama閱讀 93,372評論 3 395
  • 文/潘曉璐 我一進店門逞泄,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人拜效,你說我怎么就攤上這事喷众。” “怎么了紧憾?”我有些...
    開封第一講書人閱讀 165,282評論 0 356
  • 文/不壞的土叔 我叫張陵到千,是天一觀的道長。 經常有香客問我赴穗,道長憔四,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,842評論 1 295
  • 正文 為了忘掉前任般眉,我火速辦了婚禮了赵,結果婚禮上,老公的妹妹穿的比我還像新娘流济。我一直安慰自己崖咨,他們只是感情好盾戴,可當我...
    茶點故事閱讀 67,857評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著络断,像睡著了一般。 火紅的嫁衣襯著肌膚如雪项玛。 梳的紋絲不亂的頭發(fā)上貌笨,一...
    開封第一講書人閱讀 51,679評論 1 305
  • 那天,我揣著相機與錄音襟沮,去河邊找鬼锥惋。 笑死,一個胖子當著我的面吹牛臣嚣,可吹牛的內容都是我干的净刮。 我是一名探鬼主播,決...
    沈念sama閱讀 40,406評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼硅则,長吁一口氣:“原來是場噩夢啊……” “哼淹父!你這毒婦竟也來了?” 一聲冷哼從身側響起怎虫,我...
    開封第一講書人閱讀 39,311評論 0 276
  • 序言:老撾萬榮一對情侶失蹤暑认,失蹤者是張志新(化名)和其女友劉穎困介,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體蘸际,經...
    沈念sama閱讀 45,767評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡座哩,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了粮彤。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片根穷。...
    茶點故事閱讀 40,090評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖导坟,靈堂內的尸體忽然破棺而出屿良,到底是詐尸還是另有隱情,我是刑警寧澤惫周,帶...
    沈念sama閱讀 35,785評論 5 346
  • 正文 年R本政府宣布尘惧,位于F島的核電站,受9級特大地震影響递递,放射性物質發(fā)生泄漏喷橙。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,420評論 3 331
  • 文/蒙蒙 一登舞、第九天 我趴在偏房一處隱蔽的房頂上張望贰逾。 院中可真熱鬧,春花似錦逊躁、人聲如沸似踱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,988評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽核芽。三九已至,卻和暖如春酵熙,著一層夾襖步出監(jiān)牢的瞬間轧简,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,101評論 1 271
  • 我被黑心中介騙來泰國打工匾二, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留哮独,地道東北人。 一個月前我還...
    沈念sama閱讀 48,298評論 3 372
  • 正文 我出身青樓察藐,卻偏偏與公主長得像皮璧,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子分飞,可洞房花燭夜當晚...
    茶點故事閱讀 45,033評論 2 355

推薦閱讀更多精彩內容