2014-03-29 45 views
1

我將如何去創建一個像JavaScript界面​​的CLI?我將如何去在javascript中創建命令行界面?

我的意思是這樣的cmd.fm

我有很多的jQuery的工作,原諒我,如果我錯了,但我對如何建立這個唯一的想法是得到什麼用戶爲例鍵入並使用開關功能並檢查命令是否存在,然後執行該命令。

+1

[右鍵單擊 - >查看源代碼](https://cmd.fm/assets/application-b06c59d2eb35aa4a0171be2880245f8b.js)。 – h2ooooooo

+0

@ h2ooooooo我嘗試過,沒有我不能讀它。 –

+0

在閱讀代碼時獲得更好的效果:); –

回答

1

這一切都取決於你需要多麼複雜的命令!我會假設你知道如何用行來呈現頁面,並捕獲按鍵(最簡單的方法是樣式化文本輸入,並監聽返回鍵,而不是嘗試解碼鍵事件)。

我建立一個像這樣的數據結構(在JS):

var commands = { 
    "doThing": function(args) { /* do stuff with the args */ }, 
    "doAnotherThing": function(args) { /* do other stuff with the args */ } 
} 

用戶鍵入:

> doThing foo bar blah 

在這個簡單的例子中,你會通過空間分割線字符,並將結果數組中的第一個元素作爲命令名。然後你會檢查是否存在commands[commandName],如果是這樣,運行它:commands[commandName](args);

如果你想要做一些更高級的,你將需要寫一個tokeniser(技術上對空間分割是簡單的記號器) - 然後事情變得更加複雜,但同樣的基本方法適用。

我希望這足以讓你開始。