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


TypeScript runtime.Template類代碼示例

本文整理匯總了TypeScript中@glimmer/runtime.Template的典型用法代碼示例。如果您正苦於以下問題:TypeScript Template類的具體用法?TypeScript Template怎麽用?TypeScript Template使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


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

示例1: render

function render(template: Template, self: any) {
  let result: RenderResult;
  env.begin();
  let templateIterator = template.renderLayout({ env, self: new UpdatableReference(self), cursor: { element: root, nextSibling: null }, dynamicScope: new TestDynamicScope() });
  let iteratorResult: IteratorResult<RenderResult>;
  do {
    iteratorResult = templateIterator.next() as IteratorResult<RenderResult>;
  } while (!iteratorResult.done);

  result = iteratorResult.value;
  env.commit();
  return result;
}
開發者ID:jayphelps,項目名稱:glimmer,代碼行數:13,代碼來源:style-warning-test.ts

示例2: UpdatableReference

function render<T>(template: Template<T>, self: any) {
  let result;
  env.begin();
  let templateIterator = template.render(new UpdatableReference(self), root, new TestDynamicScope());

  do {
    result = templateIterator.next();
  } while (!result.done);

  result = result.value;
  env.commit();
  return result;
}
開發者ID:asakusuma,項目名稱:glimmer,代碼行數:13,代碼來源:node-test.ts

示例3: UpdatableReference

function render<T>(template: Template<T>, context={}) {
  self = new UpdatableReference(context);
  env.begin();
  let templateIterator = template.render(self, root, new TestDynamicScope());

  do {
    result = templateIterator.next();
  } while (!result.done);

  result = result.value;
  env.commit();
  return result;
}
開發者ID:asakusuma,項目名稱:glimmer,代碼行數:13,代碼來源:debugger-test.ts

示例4: render

function render(template: Template, context = {}) {
  self = new UpdatableReference(context);
  env.begin();
  let cursor = { element: root, nextSibling: null };
  let templateIterator = template.renderLayout({ env, self, cursor, dynamicScope: new TestDynamicScope() });
  let iteratorResult: IteratorResult<RenderResult>;
  do {
    iteratorResult = templateIterator.next();
  } while (!iteratorResult.done);

  result = iteratorResult.value;
  env.commit();
  assertInvariants(result);
  return result;
}
開發者ID:jayphelps,項目名稱:glimmer,代碼行數:15,代碼來源:attributes-test.ts

示例5: start

export function start() {
  let env = new DemoEnvironment();

  const TEMPLATES = {};

  Array.prototype.slice.call(document.querySelectorAll("[data-template-name]")).forEach(function(node) {
    let name   = node.getAttribute("data-template-name"),
        source = node.textContent;

    TEMPLATES[name] = env.compile(source);
  });

  let data = {
    width:  window.innerWidth,
    height: window.innerHeight,
    points: new RingBuffer(500), // in practice we only have 100-200 circles on screen
    count:  0,
    // fps:    0
  };

  let output = document.getElementById('output');
  let self = new UpdatableReference(data);
  let template: Template<{}> = TEMPLATES['application'];
  let templateIterator = template.render({ self, parentNode: output, dynamicScope: new TestDynamicScope() });

  let result;
  do {
    result = templateIterator.next();
  } while (!result.done);

  result = result.value;

  window.addEventListener("resize", function() {
    data.width  = window.innerWidth;
    data.height = window.innerHeight;
  });

  document.addEventListener("mousemove", function(e) {
    data.points.push( new Point(window.performance.now(), e.layerX, e.layerY) );
  });

  function tick() {
    let timestamp = window.performance.now();

    data.count = 0;

    data.points.forEach(function(point, i) {
      if (point) {
        point.update(i, timestamp);

        if (point.opacity > 0.001) {
          data.count++;
        } else {
          data.points.remove(i);
        }
      }
    });

    self.update(data);
    env.begin();
    result.rerender();
    env.commit();

    window.requestAnimationFrame(tick);
  }

  tick();
}
開發者ID:jayphelps,項目名稱:glimmer,代碼行數:68,代碼來源:ripples.ts


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