小编Mel*_*wah的帖子

IndexedDB访问速度和效率

我正在使用Dart开发RPG,我将使用IndexedDB进行数据持久化.

我将有两个数据库:一个用于只读访问,另一个用于读写访问,其中将存储保存游戏.我只是想知道我是否应该直接从数据库中读取所需数据或将其缓存在Maps中.我可能有几百条记录需要从只读数据库(敌人,游戏地图等)中提取,而我从数据库中提取所有内容的效率可能低于使用Dart的地图.

哦,每个数据库也会存储在地图中.对象存储将是该地图内的嵌套地图.

我应该直接从数据库中读取,还是应该将所有内容放入Map中并从那里读取?

编辑:忘记提及,只读数据库将使用位于用户计算机上的JSON文件中的数据进行初始化,而不是通过AJAX.

performance hashmap game-engine indexeddb dart

6
推荐指数
1
解决办法
6116
查看次数

记录过期

我的 Rails 应用程序允许管理员向其他玩家发出违规信息,这些信息存储在数据库表中。这些违规行为具有分值,累加起来即可为玩家提供分值。但是,这些记录将包含到期时间戳。有没有什么方法可以让违规记录过期后自动删除?

activerecord ruby-on-rails ruby-on-rails-4

4
推荐指数
1
解决办法
1896
查看次数

我可以让 Dart 函数“等待”一段时间或输入吗?

我正在尝试在 Dart 中制作一个简单的 RPG。我需要在 div 的屏幕上显示文本,并且我需要让程序在显示下一段文本之前等待用户输入。

例如:

void main() {
  showText("Hello, Adventurer! Welcome to the land of Dartia! (Press ENTER to continue...)");
  print("showText has finished");
}
Run Code Online (Sandbox Code Playgroud)

"showText has finished"在显示文本并且玩家按下回车键之前不应显示。这是我到目前为止的(在我看来很丑陋)代码:

void showText(String text) {
    var textBox = querySelector("#sample_text_id")
        ..text = "";
    var timer;
    var out;
    out = ([int i = 0]) {
        textBox.text += text[i];
        if (i < text.length - 1) timer = new Timer(const Duration(milliseconds: 10), () => out(i + 1));
    };
    out();
}
Run Code Online (Sandbox Code Playgroud)

Timerout()异步运行该函数,我不希望它这样做。理想情况下,我想写这样的东西:

void showText(String …
Run Code Online (Sandbox Code Playgroud)

html wait dart

4
推荐指数
1
解决办法
3736
查看次数

玩!框架路由通配符为根地址

我正在使用Backbone作为SPA,我也在使用它的路由器.我需要在我的应用程序的路径文件中为后端设置一个通配符,但我无法弄清楚如何为ROOT URL设置它.我试过GET /*path controllers.Application.cms(path)但如果我导航到它就行不通localhost:9000.此外,GET *path controllers.Application.cms(path)省略斜杠不是有效路线.有什么方法可以设置通配符来捕获所有未被捕获的路线吗?

java routing wildcard playframework backbone.js

3
推荐指数
1
解决办法
1398
查看次数

侦听来自锚标签的所有“ onClick”事件,这些事件可能包含子对象

我正在尝试实现一个简单的(-ish)路由器作为练习。但是,我在检测锚点点击时遇到问题。理想情况下,只要URL更改(不使用哈希),我都想拦截一个事件,但是现在,我只希望能够拦截任何锚点事件。

到目前为止,这是我尝试过的:

的HTML

<nav id="mainMenu">
    <ul id="navlinks">
        <li>
            <a href="/">
                <span>HOME</span>
            </a>
        </li>
        <li>
            <a href="/posts">
                <span>POSTS</span>
            </a>
        </li>
    </ul>
</nav>
Run Code Online (Sandbox Code Playgroud)

单独的JS文件

function intercept(event)
{
    console.log("triggered");
    var tag = event.target;

    if (
        tag.tagName.toUpperCase() === 'A' &&
        tag.href &&
        event.button == 0 &&
        tag.origin == document.location.origin
    ){
        event.preventDefault();
        console.log("default prevented")
    }
}
Run Code Online (Sandbox Code Playgroud)

使用此代码,我仅检测span事件,而不检测<a>事件。如何使用Vanilla JS检测锚点事件(如果可能)?我也希望能够检测动态创建的锚点。

编辑1:更改了JS功能。控制台打印default prevented: SPAN

function intercept(event)
{
    console.log("triggered");
    var tag = event.target;

    //if (
    //    tag.tagName === 'A'
    //){
        event.preventDefault();
        console.log("default …
Run Code Online (Sandbox Code Playgroud)

html javascript anchor onclick dom-events

2
推荐指数
1
解决办法
3028
查看次数

运行rake test时无法加载此类文件zip/zip:prepare

在尝试准备我的数据库时,我不断收到Cannot load such file: zip/zip错误.我在SO上看到过这个问题,但没有一个答案对我有用.有没有人有任何想法?

我正在使用Ruby 2.0.0-p247和Rails 4.0.1

ruby-on-rails-4

1
推荐指数
1
解决办法
770
查看次数