Как мне добавить кейсы в оператор switch для этого кода эмулятора терминала? - PullRequest
0 голосов
/ 02 августа 2020

Я редактирую сценарий этого кода: https://codepen.io/rafael-casachi/pen/qLEeJV для использования на моем веб-сайте, но я не могу понять, как добавить больше случаев в оператор switch, который будет выполнять нужные мне функции . Вот что я хотел бы добавить:

case 'cd' пользователь может ввести 'cd', за которым следует слово, а затем go на страницу моего веб-сайта с этим именем пути (например, пользователь вводит cd shop ', и он открывает окно с URL www.mywebsite.com/shop)

case' find ', пользователь может ввести' find ', а затем слово для поиска этого ключевого слова на моем веб-сайте ( как строка поиска; например, пользователь вводит «найти брюки», что вызывает поиск чего-либо с ключевым словом «брюки» на моем веб-сайте)

Есть идеи, что мне делать? Спасибо!

<script>

var util = util || {};
util.toArray = function(list) {
   return Array.prototype.slice.call(list || [], 0);
};

var Terminal = Terminal || function(cmdLineContainer, outputContainer) {
   window.URL = window.URL || window.webkitURL;
   window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;

   var cmdLine_ = document.querySelector(cmdLineContainer);
   var output_ = document.querySelector(outputContainer);

   const CMDS_ = [
      'cat', 'clear', 'date', 'echo', 'help', 'uname', 'whoami', 'me'
   ];

   var fs_ = null;
   var cwd_ = null;
   var history_ = [];
   var histpos_ = 0;
   var histtemp_ = 0;

   window.addEventListener('click', function(e) {
      cmdLine_.focus();
   }, false);
</script>

<div id="wrapper">
   <output></output>
   <div id="input-line" class="input-line">
      <div class="prompt"></div><div><input class="cmdline" autofocus /></div>
   </div>
</div>

}

.ls-files {
   height: 45px;
   -webkit-column-width: 100px;
   -moz-column-width: 100px;
   -o-column-width: 100px;
   column-width: 100px;
}

<style>
$font-color: #0f8;
$bg-color: #111;
$header-color: #fff;
$selection-color: #FF5E99;
$font-family: "Courier New", monospace;
$font-size: 13px;

::selection {
  background: $selection-color;
}

html, body {
  width: 100%;
  height: 100%;
  margin: 0;
}

body {
   font-family: $font-family;
   color: $header-color;
   background: $bg-color;
   font-size: $font-size;
}

#wrapper {
   padding: .1em 5em 1em 1em;
   line-height: 1;
   
   output {
      clear: both;
      width: 100%;
      
      h3, h2 {
         margin: 0;
      }
      
      pre {
         margin: 0;
      }
      
      p {
         margin-top: .5em;
         margin-bottom: .5em;
      }
   }
}

.input-line {
   display: -webkit-box;
   -webkit-box-orient: horizontal;
</style>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...