小编GG.*_*GG.的帖子

用于命名变量和函数的单个字母

上下文

我阅读了Google编写的JavaScript代码示例.它用于:

  1. 用于命名变量的单个小写字母
  2. 用于命名功能的单个大写字母

所以代码难以辨认.

问题

  • 为什么这个命名?
  • 有什么工具可以做到这一点?

javascript variables optimization function naming-conventions

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

在批处理文件中捕获错误(7-zip)

我有一个批处理文件,我在其中执行以下行列出存档的内容:

"\Program Files\7-Zip\7z.exe" l "\Backup Google Docs.7z"
Run Code Online (Sandbox Code Playgroud)

存档故意损坏.

cmd.exe显示如下:

在此输入图像描述

如何在代码中捕获此错误?

windows error-handling runtime-error 7zip batch-file

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

如何在jquery ui按钮中居ui图标

我正在寻找一种方法来创建工具栏按钮uisng jquery ui.

我尝试使用创建按钮

<div id='menubar_home' style='vertical-align: middle;width: 20px; height: 20px;'>
</div>
Run Code Online (Sandbox Code Playgroud)

和使用

$('#menubar_home').button({
    icons: { primary: "ui-icon-home" }
});
Run Code Online (Sandbox Code Playgroud)

但按钮中的图像不居中:

不集中

如何将图像置于按钮中心?

css jquery-ui image button

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

jQuery:一个带有多个dropzone的拖放式上传

我想通过文件夹上的拖放上传来开发一个文件夹和文件树.

例:

在此输入图像描述

对于拖放上传,我资助jQuery文件上传.

基本代码是:

$('#fileupload').fileupload({
    dataType: 'json',
    url: 'php/index.php',
    dropZone: $(document),
    done: function (e, data) {
        $.each(data.result, function (index, file) {
            $('<p/>').text(file.name).appendTo(document.body);
        });
    }
});
Run Code Online (Sandbox Code Playgroud)

在我的项目中,我有多个dropzone(我的文件夹),例如:

<ul>
    <li>Bookmarks</li>
    <li>Search</li>
    <li>Web dev</li>
    ...
</ul>
Run Code Online (Sandbox Code Playgroud)

如何更改上面的代码来处理带有id,class和jQuery选择器的多dropzone?


我试过这样的东西,但显然它不起作用:

<ul>
    <li id="folder1" class="folder">Bookmarks</li>
    <li id="folder2" class="folder">Search</li>
    <li id="folder3" class="folder">Web dev</li>
    ...
</ul>
Run Code Online (Sandbox Code Playgroud)

.

$('.folder').fileupload({
    dataType: 'json',
    url: 'php/index.php',
    dropZone: $('.folder'),
    done: function (e, data) {
        $.each(data.result, function (index, file) {
            $('<p/>').text($(this).attr(id)).appendTo(document.body);
        });
    }
});
Run Code Online (Sandbox Code Playgroud)

问题:

  • 上传完成3次.
  • $(this)不存在.

javascript treeview upload jquery drag-and-drop

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

Impress.js:文本和图像看起来很模糊

使用Impress.js,我的文本和图像看起来很模糊.

请参阅下一个屏幕截图,其中禁用了CSS但启用了Impress.js:

在此输入图像描述

现在看到Impress.js和CSS被禁用的下一个屏幕截图:

在此输入图像描述

他们为什么模糊?

这是我的配置:

<div id="Model-2" class="step" data-x="117000" data-rotate="20">
    <h2>Backbone.Model</h2>
    <p>On peut préciser des valeurs par défaut</p>
    <img src="img/18.png">
</div>
Run Code Online (Sandbox Code Playgroud)

html javascript css blurry impress.js

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

安装Babel以与React和JSX一起使用

我是React,Babel和JSX的新手.我正在试图弄清楚如何安装Babel,以便在浏览器中使用React和JSX"做正确的事".

但是,Babel的文档假设我已经知道整个NPM/Node +许多其他包管理器+框架生态系统,我不知道.

对于那些只想使用Babel为React应用程序编译JSX的人,有没有任何文档?我想学习如何在我的机器上(不是在托管网站上)这样做,但它似乎没有初学者文档.

看起来这些部件的各种版本不再一起工作,所以我对我需要的东西感到有点困惑.

到目前为止,我已经下载了React 16.2,并使用npm来安装Babel

npm install --save-dev babel-plugin-transform-react-jsx
Run Code Online (Sandbox Code Playgroud)

并且在我的文件夹中有一个node_modules /文件夹,其中Babel是(似乎是版本6.24.1,不知道这是否是React 16.2的正确版本),以及我想放置我的HTML和JavaScript的地方.

但是现在我被卡住了.我不知道如何让Babel做我需要的事情.我想只是写一些HTML一些阵营+ JSX在里面,并有"正确的事"发生,但无法找到任何文件对如何做到这一点.

谢谢!

javascript build jsx babel reactjs

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

ng-repeat索引到数组

我有一个angularjs应用程序,通过ajax流数据,我想重复数据.我有数据流和显示但现在我想模板化对象.我遇到的问题是我使用ng-repeat简单地索引到控制器中的数组.我现在需要一个

    <div class="row" data-ng-repeat="row in rows">
        <div class="span3" data-ng-repeat="col in cols">
            //displays the raw json fine
            {{ data[$parent.$index * numColumns + $index] }}                           
            // also displays the raw json
            {{ item = data[$parent.$index * numColumns + $index] }}                           
            <div>Id: {{item.Id}} </div>
            <div>Title: {{ item.ClientJobTitle }}</div>
            ...
        </div>
    </div>
Run Code Online (Sandbox Code Playgroud)

我总是可以为每个属性重复数组索引表达式,但是会有几十个属性,所以代码会很难看,所有重复的计算都会减慢速度.

这样做的正确(有角度)方法是什么?

更新 我需要它也是响应,我将根据窗口宽度动态调整列数.

更新 我想我真正想要的是类似下面的非工作示例

     <div class="row" data-ng-repeat="row in rows">
        <div class="span3" data-ng-repeat="col in cols">
            <div ng-model="data[$parent.$index * numColumns + $index]">
                <!-- Here $model would refer to the ng-model above --> …
Run Code Online (Sandbox Code Playgroud)

angularjs

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

一次只允许一个异步操作

我正在构建一个站点,一个特定的操作会触发一个长的服务器端进程来运行.此操作不能同时运行两次,因此我需要实现某种保护.它也不能同步,因为服务器在运行时需要继续响应其他请求.

为此,我构建了这个小概念测试,sleep 5用来替代我实际的长期运行过程(需要快速子进程承诺,在带有sleep命令的系统上运行,但替代Windows的任何内容):

var site = require("express")();
var exec = require("child-process-promise").exec;

var busy = false;

site.get("/test", function (req, res) {
    if (busy) {
        res.json({status:"busy"});
    } else {
        busy = true; // <-- set busy before we start
        exec("sleep 5").then(function () {
            res.json({status:"ok"});    
        }).catch(function (err) {
            res.json({status:err.message});
        }).then(function () {
            busy = false; // <-- finally: clear busy
        });
    }
});

site.listen(8082);
Run Code Online (Sandbox Code Playgroud)

这样做的目的是当请求"/ test"时它触发一个长操作,如果在它运行时再次请求"/ test",它会回复"忙"并且什么都不做.

我的问题是,这种实施安全和正确吗?它似乎在我的粗略测试中起作用,但它很可疑.这是基本上实现互斥+ +"try-lock"操作的正确方法,还是有一些更合适的Node.js构造?从习惯于标准多线程实践的语言开始,我对Node的单线程但异步性质不太满意.

javascript node.js

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

包装在setTimeout中时出错"无法读取未定义的属性"

我一直在处理一段代码,用于处理单个网页上的多个小视频元素,但我无法使多个进度条与各自的视频同步.

(当前的jsFiddle原型)

这段代码$(this).find("progress").attr("value", $("video", this)[0].currentTime);似乎在main函数内部工作,但是当我将它包装在另一个函数中时,setTimeout进度条实际上是动画的,我得到了这个错误:

"无法在函数中读取未定义的属性'currentTime' "

我已经尝试了一些变化,看看我是否可以让它自己工作,但我无法通过像往常一样在墙上抛出代码来修复它.

有人能告诉我为什么这样做吗?

javascript jquery

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

按嵌套属性对对象排序

我有一个看起来像下面的对象.如何基于嵌套对象中的公共属性对此类事进行排序.我期望的输出是玩家2基于较高分数首先出现.

我的挑战是访问每个对象的属性进行排序.

这是我的想法和尝试,但它没有做排序.

Object.keys(data).sort(function(p1, p2){
    return p1.score - p2.score;
}).forEach(function(key) {
    var value = data[key];
    delete data[key];
    data[key] = value;
});
Run Code Online (Sandbox Code Playgroud)

我的数据

var data =
    { 
      player1:
       { score: 4,
         cards: 6 },
      player2:
       { score: 6,
         cards: 4} 
    }
Run Code Online (Sandbox Code Playgroud)

javascript sorting object

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