當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript Mode.ensure方法代碼示例

本文整理匯總了TypeScript中@jupyterlab/codemirror.Mode.ensure方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript Mode.ensure方法的具體用法?TypeScript Mode.ensure怎麽用?TypeScript Mode.ensure使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在@jupyterlab/codemirror.Mode的用法示例。


在下文中一共展示了Mode.ensure方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: it

    it('should add a spec loader', async () => {
      let called = 0;
      let loaded = 0;

      Mode.addSpecLoader(async spec => {
        called++;
        if (spec.mode !== 'bar') {
          return false;
        }
        loaded++;
        return true;
      }, 42);

      CodeMirror.modeInfo.push(fakeMode('bar'));

      let spec = await Mode.ensure('bar');
      expect(called).to.equal(1);
      expect(loaded).to.equal(1);
      expect(spec.name).to.equal('BAR');

      spec = await Mode.ensure('python');
      expect(called).to.equal(1);
      expect(loaded).to.equal(1);

      try {
        spec = await Mode.ensure('APL');
      } catch (err) {
        // apparently one cannot use webpack `require` in jest
      }
      expect(called).to.equal(2);
      expect(loaded).to.equal(1);
    });
開發者ID:afshin,項目名稱:jupyterlab,代碼行數:32,代碼來源:mode.spec.ts

示例2: callback

 highlight: (code, lang, callback) => {
   let cb = (err: Error | null, code: string) => {
     if (callback) {
       callback(err, code);
     }
     return code;
   };
   if (!lang) {
     // no language, no highlight
     return cb(null, code);
   }
   Mode.ensure(lang).then(spec => {
     let el = document.createElement('div');
     if (!spec) {
       console.log(`No CodeMirror mode: ${lang}`);
       return cb(null, code);
     }
     try {
       Mode.run(code, spec.mime, el);
       return cb(null, el.innerHTML);
     } catch (err) {
       console.log(`Failed to highlight ${lang} code`, err);
       return cb(err, code);
     }
   }).catch(err => {
     console.log(`No CodeMirror mode: ${lang}`);
     console.log(`Require CodeMirror mode error: ${err}`);
     return cb(null, code);
   });
   return code;
 }
開發者ID:cameronoelsen,項目名稱:jupyterlab,代碼行數:31,代碼來源:renderers.ts


注:本文中的@jupyterlab/codemirror.Mode.ensure方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。