小编kat*_*ugh的帖子

链式方法在Python中调用缩进样式

从阅读PEP-8开始,我得知你应该将右括号放在与函数调用中最后一个参数相同的行上:

ShortName.objects.distinct().filter(
    product__photo__stockitem__isnull=False)
Run Code Online (Sandbox Code Playgroud)

也许,长表达最好避免.但是,如果这是不受欢迎的,你将如何进行多个链式方法调用?闭幕式是否应该换新线?

ShortName.objects.distinct().filter(
    product__photo__stockitem__isnull=False
).values_list('value', flat=True)
Run Code Online (Sandbox Code Playgroud)

那些无参数方法呢?如何在不引用中间返回值的情况下在多行上编写它们?

ShortName.objects.distinct(
    ).filter().values() # looks ugly
Run Code Online (Sandbox Code Playgroud)

更新:如何在Python中打破一系列链式方法有一个重复的问题.该接受的答案建议开始以点每个新线的熟悉从jQuery的风格.作者没有提供任何理由或权威参考,所以我想得到关于这种风格或替代方案的确认.

python django coding-style pep8

95
推荐指数
2
解决办法
4万
查看次数

设置HTML5音频位置

如何在HTML5音频元素中跳转到某些时间偏移?

他们说你可以简单地设置他们的currentTime财产(强调我的):

currentTime获取时,该属性必须返回当前播放位置,以秒为单位表示.在设置时,如果媒体元素具有当前媒体控制器,则它必须抛出INVALID_STATE_ERR异常; 否则,用户代理必须寻找新值(这可能引发异常).

唉,它似乎不起作用(我需要在Chrome中).

有类似的问题,但没有答案.

javascript google-chrome html5-audio

62
推荐指数
8
解决办法
8万
查看次数

为什么不能从原型改变构造函数?

我有这样的例子.

function Rabbit() {
    var jumps = "yes";
};
var rabbit = new Rabbit();
alert(rabbit.jumps);                    // undefined
alert(Rabbit.prototype.constructor);    // outputs exactly the code of the function Rabbit();
Run Code Online (Sandbox Code Playgroud)

我想更改代码,Rabbit()以便var jumps公开.我是这样做的:

Rabbit.prototype.constructor = function Rabbit() {
    this.jumps = "no";
};
alert(Rabbit.prototype.constructor);    // again outputs the code of function Rabbit() and with new this.jumps = "no";
var rabbit2 = new Rabbit();             // create new object with new constructor
alert(rabbit2.jumps);                   // but still outputs undefined
Run Code Online (Sandbox Code Playgroud)

为什么不能以这种方式更改构造函数中的代码?

javascript oop prototype

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

Iframe在下方创造了额外的空间

为什么iframe会在其元素下添加额外的空间?看看这个奇怪的行为:

.border {
    background: red;
    width: 300px;
    height: 200px;
    border: 1px solid green;
    overflow: visible;
    margin: 0;
    padding: 0;
}

.border iframe {
    border: none;
    width: 300px;
    height: 100px;
    margin: 0;
    padding: 0;
    opacity: 0.8;
}

.border .lower {
    height: 100px;
    margin: 0;
    padding: 0;
    background: blue;
    opacity: 0.8;
}
Run Code Online (Sandbox Code Playgroud)
<div class="border">
  <iframe src="https://example.com"></iframe>
  <div class="lower"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

如何解决?

html css iframe

45
推荐指数
3
解决办法
2万
查看次数

Web Audio可视化并与波形交互

如何编写JavaScript程序以显示音频文件中的波形?我想使用Web Audio和Canvas.

我试过这段代码:

(new window.AudioContext).decodeAudioData(audioFile, function (data) {
   var channel = data.getChannelData(0);
   for (var i = 0; i < channel; i++) {
       canvas.getContext('2d').fillRect(i, 1, 40 - channel[i], 40);
   }
});
Run Code Online (Sandbox Code Playgroud)

但结果远非我想要的(即,由于我用矩形绘制,图像不平滑).我希望它看起来像这样的图像:

波形示例

有关如何实现波形的任何提示?

javascript html5 canvas web-audio-api

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

防止Angular 2中的内存泄漏?

在Angular 2中有关于内存管理的任何特定缺陷,我应该知道吗?

管理组件状态以避免可能的泄漏的最佳实践是什么?

具体来说,我已经看到一些人在方法中取消订阅HTTP observablesngOnDestroy.我应该一直这样做吗?

在Angular 1.XI中,知道当a $scope被破坏时,其上的所有听众也会被自动销毁.Angular 2组件中的可观察量如何?

@Component({
  selector: 'library',
  template: `
    <tr *ngFor="#book of books | async">
        <td>{{ book.title.text }}</td>
        <td>{{ book.author.text }}</td>
    </tr>
  `
})
export class Library {
    books: Observable<any>;

    constructor(private backend: Backend) {
        this.books = this.backend.get('/texts'); // <-- does it get destroyed
                                                 //     with the component?
    }
};
Run Code Online (Sandbox Code Playgroud)

javascript memory-leaks rxjs angularjs angular

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

Git与JSON文件冲突

我们的网站使用一堆带翻译的JSON文件进行本地化(每种语言一个文件).文件的内容如下所示:

{
    "Password": "Passwort",
    "Tables": "Tische"
}
Run Code Online (Sandbox Code Playgroud)

许多团队成员同时编辑这些JSON文件,添加新短语和编辑现有短语,即使人们正在更改不同的行,我们也会遇到很多冲突.

有没有办法以这样的方式设置git,以帮助避免合并冲突?

PS 我发现这个脚本有助于本地合并:https://gist.github.com/jphaas/ad7823b3469aac112a52.但是,我对能够解决团队中每个人的问题的解决方案感兴趣(即使是通过GitHub的Web界面编辑JSON的人).

git json localization github git-merge

18
推荐指数
2
解决办法
3843
查看次数

在Web worker和主线程之间传递大量数据

有没有办法在Web worker和主线程之间传递大量数据(多个MB)?我在一个项目中工作,我需要下载文件,稍微修改它们,然后以某种方式让用户下载修改后的文件.我找到了以下方法在Web worker和主UI之间传递数据

  1. 使用常规postMessage方法.
  2. 使用可传输对象(仅限Chrome)
  3. 创建一个blob的URL引用,只发送URL(在Chrome中工作,在其他工作中也是如此?)

我认为(1)在发送较小的对象时很好,但是处理大于几MB的文件需要花费大量的时间和空间,因为它被序列化并作为JSON发送.Chrome提供了一种使用可转移对象传输数据的方法,其中不必复制数据.不幸的是,到目前为止,这只是Chrome的一项功能,因为它本来可以达到我的目的.

我发现的最后一件事是,从工作人员创建一个使用blob的URL self.webkitURL,然后只将URL引用传递给UI.这很好用,我可以将URL提供给用户,他们可以下载该文件.我遗憾的是没有找到办法在Firefox中做到这一点,是否可能?

有没有其他方法可以用来在工作者和主线程之间传输数据?

javascript html5 web-worker html5-filesystem

16
推荐指数
2
解决办法
8839
查看次数

background-canvas与普通画布的性能

前段时间webkit(以及Safari)开始支持元素的CSS画布背景(来源:http://www.webkit.org/blog/176/css-canvas-drawing/).

这可以大大简化游戏和多媒体的创建,因为你不需要将画布标签注入DIV(例如),而只需直接挂入DIV的背景.也许这样的东西:

<div id="gameview"
style="background: -webkit-canvas(myscreen); width: 320px; height: 480px;">
</div>

<script>
    var target = document.getElementById("gameview");
    var wd = target.clientWidth;
    var hd = target.clientHeight;
    var context =  document.getCSSCanvasContext("2d", "myscreen", wd, hd);
    /* draw stuff here */
</script>
Run Code Online (Sandbox Code Playgroud)

我在想,这有什么速度惩罚吗?从理论上讲,我认为绘制背景画布应该比绘制画布标签更快,特别是如果目标元素为空.

有没有人为高速演示或游戏测试过这个?

javascript safari webkit canvas

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

禁用时间线上的照片分组

有没有人知道Facebook何时在时间轴上将照片分组到同一张专辑中?有可能阻止它这样做吗?如果你每天发布一张或两张图片(通过API),并通过反向链接到其他网站和facebook组合这些东西,很可能其中一个链接永远不会被其他人看到.据我所知,没有其他方法可以在时间轴上发布带有链接的大照片.所以:

  • 发布图片后多久可以发布另一张图片,因为它不会被分组到其他的Feed中?
  • 有什么方法可以通过API克服分组?
  • 有没有其他方式发布一张描述和上面的链接的大图片(目前,我将它们作为照片发布到特定的相册)?

谢谢你的想法

facebook facebook-graph-api

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