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


TypeScript lokijs.addCollection函數代碼示例

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


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

示例1: constructor

 public constructor(getISODate: () => string) {
   const db = new loki("stats-database");
   this.counters = db.addCollection("counters");
   this.customEvents = db.addCollection("customEvents");
   this.timings = db.addCollection("timing");
   this.getDate = () => getISODate();
 }
開發者ID:drvegass,項目名稱:telemetry,代碼行數:7,代碼來源:database.ts

示例2: onAutoLoad

 function onAutoLoad() {
     var users = db.getCollection<model.User>("users")
     
     if (!users) {
         users = db.addCollection<model.User>("users"); 
         console.log("Database not found. Adding the users collection.");
     }
     
     self.users = users;
 };
開發者ID:SFWLtd,項目名稱:govuk-github-caller,代碼行數:10,代碼來源:database.ts

示例3: parse

    parse(source: string, filename: string): any {
        /*try {
            let gherkinDocument = parser.parse(source);
            let result = JSON.stringify(gherkinDocument, null, 2);
            console.log(result);
        } catch (error) {
            console.log(error);
        }*/

        let ending = "\n";
        if (source.indexOf("\r\n") > 0) {
            ending = "\r\n";
        }
        let name = path.basename(filename, "feature");
        let lines = source.split(ending); // "/\r?\n/");
        let arr = [];

        let lockdb = new loki("loki.json");
        let methods = lockdb.addCollection("ValueTable");
        let replReg = new RegExp("'[А-яA-z\d]'", "i");
        for (let index = 0; index < lines.length; index++) {
            let element: string = lines[index].trim();
            if (element.startsWith("#") || element.startsWith("@")) {
                continue;
            }
            if (element.trim().length === 0) { continue; }
            element = element.replace(/'[А-яA-z\d]+'/i, "");
            let methRow: MethodValue = {
                    "name": String(element),
                    "isproc": Boolean(false),
                    "line": index,
                    "endline": index,
                    "context": "",
                    "_method": {},
                    "filename": filename,
                    "module": element,
                    "description": name
                };

            methods.insert(methRow);
        }
        return methods;
    }
開發者ID:pumbaEO,項目名稱:vsc-bsl-specflow,代碼行數:43,代碼來源:global.ts

示例4:

jenkins.listJobs().then(jobs => Promise.map(jobs, job => job.getBuildResults().then(buildResults => {
            var jobCollection = db.addCollection(job.name);
            buildResults.forEach(buildResult => jobCollection.insert(buildResult));
        }).catch(err => {
開發者ID:pierreca,項目名稱:dashboards,代碼行數:4,代碼來源:jenkins.ts

示例5: Loki

import * as Loki from 'lokijs';
import {Post, User} from '../../client/entities';

export const db = new Loki("q&a.db");

export const post = db.addCollection<Post & { type: "QUESTION" | "ANSWER" | "COMMENT"; }>("post", { indices: ["id"] });
export const postToPosts = db.addCollection<{ parentId: number; childId: number; }>("post_to_post");
export const passport = db.addCollection<{ id: number; login: string; password: string; }>("passport", { indices: ["id", "login"]});
export const user = db.addCollection<User>("user", { indices: ["id"] });
開發者ID:Librioniq,項目名稱:WebClient,代碼行數:9,代碼來源:create.ts

示例6: createBoard

export  function createBoard(): Board {
  const board = TsEventEmitter.create() as Board
  const db = new Loki("")
  const rooms = board.rooms = db.addCollection<Room>("rooms", {
    unique: ["name"],
    indices: ["memberCount"],
  })

  function connect() {
    const peer = TsEventEmitter.create() as Peer

    function process(data: string) {
      // emit the data for the board to process
      board.event("data").emit({ data, peer })

      if (data.charAt(0) === "/") {
        const command = data.slice(1, data.indexOf("|", 1)).toLowerCase()

        // split data and parse the parts
        const parts = data.slice(command.length + 2).split("|").map(jsonparse)

        switch (command) {
          case "to": {
            const idPart: IdType = parts[0]
            const target = peer.room && peer.room.members.find((member: any) => member.id === idPart)

            if (target) {
              target.event("data").emit(data)
            } else {
              console.warn(`got a to request for id "${idPart}" but cannot find target`)
            }

            return
          }
          case "leave": {
            board.event("leave").emit(peer)
            break
          }
          case "announce": {
            board.event("announce").emit({peer, data: parts[1]})
            break
          }
          default: {
            console.warn(`dropped "${command}" event from ${parts[0]}`)

          }
        }

        if (peer.room) {
          peer.room.members.filter((p: any) => p !== peer).forEach(member => member.event("data").emit(data))
        }
      }
    }

    // add peer functions
    peer.process = process
    peer.leave = () => board.event("leave").emit(peer)

    // trigger the peer connect
    board.event("peer:connect").emit(peer)

    return peer
  }


  function destroy() {
    rooms.clear()
  }

  function getRoom(name: string): Room {
    function getCachedRoom(): Room | null {
      return rooms.by("name", name)
    }

    function createRoom() {
      // create a simple room object
      const room = rooms.insert({
        name,
        memberCount: 0,
        members: [],
      })

      board.event("room:create").emit(name)
      return room
    }

    return getCachedRoom() || createRoom()
  }

  // handle announce messages
  board.event("announce").on(({peer, data}: {peer: Peer, data: AnnounceData }) => {
    const targetRoom: string | undefined = data && data.room
    const room = targetRoom && getRoom(targetRoom)

    // a peer can only be in one room at a time
    // trigger a leave command if the peer joins a new room
    if (peer.room && peer.room.name !== targetRoom) {
      board.event("leave").emit(peer)
    }

//.........這裏部分代碼省略.........
開發者ID:bengt-games,項目名稱:curves-server,代碼行數:101,代碼來源:switch.ts


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