我正在使用带有gulp(.pipe($.babel()))的babel ,它似乎适用于大多数事情,但不适用于Array.from.
它在运行时工作正常babel-node:
$ ./node_modules/babel/bin/babel-node.js
> Array.from
[Function: from]
Run Code Online (Sandbox Code Playgroud)
但是当使用gulp处理以下代码时:
var foo = () => { console.log(Array.from) }
Run Code Online (Sandbox Code Playgroud)
转化的来源是:
var foo = function foo() {
console.log(Array.from);
};
Run Code Online (Sandbox Code Playgroud)
我执行时的控制台输出foo是:
未定义
someElement.getBoundingClientRect()返回类型(或显然)的特殊对象的结果ClientRectDomRect
它的结构就像 {top: 10, right: 20, bottom: 30, left: 10, width: 10}
不幸的是,这个对象的行为与其他对象不同.
例如,使用Object.keys它返回一个空数组(我认为因为ClientRect属性不可枚举
我找到了一种转换为普通对象的脏方法:
var obj = {}
for (key in rect) {
obj[key] = rect[key]
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,有更好的方法吗?
我读到>在css 中使用子选择器()比后代选择器(). For example: p > em相对于p em.
在我看来,我在野外看到的大多数代码都没有利用这一点.
我理解某些情况值得使用其中一种,但总的来说,我是否应该尽可能地利用儿童选择器?或者我应该遵循什么似乎是惯例,并主要依靠后代选择器?
我想,而不是标准的单选按钮,为每个单选按钮使用不同的图像.对于选定的状态,我希望在图像周围出现边框.
我已经尝试为单选按钮制作图像标签然后隐藏按钮,但这似乎因某种原因而破坏了功能.
我也遇到过这篇文章:http://ryanfait.com/resources/custom-checkboxes-and-radio-buttons/我可能会以某种方式扭曲我的目的.
有更简单/更好的方法吗?
我正在使用Groovy RESTClient类为Java WebServices写一些(spock)验收测试我一直在创作.
我遇到的一个挫折就是测试答案......
200 状态很简单:
when: def result = callServiceWithValidParams()
then: result.status == 200
Run Code Online (Sandbox Code Playgroud)
但是400+我被迫要么包装,要么默认try-catch测试HttpResponseException那个RESTClient抛出.
when:
callWithInvalidParams()
then:
def e = thrown(Exception)
e.message == 'Bad Request'
Run Code Online (Sandbox Code Playgroud)
这有点好,如果有点令人沮丧......但我想做得更好.
理想情况下,我希望我的测试更像这样(如果你不使用groovy/spock,可能会让人感到困惑)
@Unroll
def "should return #statusCode '#status' Response"()
{
when:
def result = restClient.get(path: PATH, query: [param: parameter])
then:
result.status == statusCode
where:
status | statusCode | parameter
'OK' | 200 | validParam
'Bad Request' | 400 | invalidParam
}
Run Code Online (Sandbox Code Playgroud)
在上面的示例中,"错误请求"案例失败. …
我正在尝试创建一个textarea,其输入绑定到JS数组,其中条目对应于文本区域中的每一行.
我一直在尝试使用ngList它的可选参数来指定分隔符.我可以,通过在textarea的每一行之后添加逗号来使其与default()一起使用,但我真的不想要求它.
textarea
<textarea ng-model="list"
rows="5"
ng-list="\n" >
</textarea>
Run Code Online (Sandbox Code Playgroud)
输入:
test1
test2
test3
Run Code Online (Sandbox Code Playgroud)
生成的输出是 ["test1\ntest2\ntest3"]
我在寻找的是: ["test1","test2",test3"]
在JS代码中使用命名IIFE来描述和分组相关代码的利弊是什么?
我一直在使用这个"模式"来为我的更多程序代码提供结构,这些代码只能在一个地方执行.
(function hideStuffOnInstantiaton(){
$('oneThing').hide().removeClass();
$('#somethign_else').slideUp();
$('.foo').fadeOut();
}());
Run Code Online (Sandbox Code Playgroud)
我觉得这比两者都好:
// hide Stuff on Instantiaton
$('oneThing').hide().removeClass();
$('#somethign_else').slideUp();
$('.foo').fadeOut();
Run Code Online (Sandbox Code Playgroud)
因为随着时间的推移,评论可能会与代码分开,而且评论所适用的行不是很明显
并:
function hideStuffOnInstantiaton(){
$('oneThing').hide().removeClass();
$('#somethign_else').slideUp();
$('.foo').fadeOut();
};
hideStuffOnInstantiaton();
Run Code Online (Sandbox Code Playgroud)
因为如果它只在一个地方执行,为什么要分开函数及其执行?
使用此模式时是否存在任何性能,可维护性,可测试性或跨浏览器注意事项?我不相信我已经看到很多人在野外使用它但我觉得它可能非常有用
我使用Facebook发布GRAPH UI发布私人消息,链接到我在facebook的应用程序.之前它工作正常,但从最近两天开始,对话框开始抛出错误:
发生错误.请稍后再试.
API错误代码:100
API错误说明:无效参数
错误消息:"链接"无效.
发送消息我正在使用代码:
function sendMessage(id) {
FB.ui({
method : 'send',
name : 'My APP',
link : 'https://apps.facebook.com/MY_APP/',
to : id,
show_error : 'true',
description : 'my description'
});
}
Run Code Online (Sandbox Code Playgroud)
我已经用Google搜索了这一点,我得到的唯一相关信息是Facebook阻止了自己域名的链接以避免垃圾邮件.因为我改变了其他实时网站的链接工作.
我需要发送链接到我的应用程序,因为我必须提供这样的功能.
我正在努力让Grunt的"实时重新加载"能力(如实现grunt-contrib-watch)在我的应用程序中工作.我终于咬紧牙关,试着做一个最小的例子.希望有人可以很容易地注意到缺少的东西.
文件结构:
??? Gruntfile.js
??? package.json
??? index.html
Run Code Online (Sandbox Code Playgroud)
package.json
{
"name": "livereloadTest",
"version": "0.1.0",
"devDependencies": {
"grunt": "~0.4.2",
"grunt-contrib-watch": "~0.5.3"
}
}
Run Code Online (Sandbox Code Playgroud)
Gruntfile.js
module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
watch: {
src: {
files: ['*.html'],
options: { livereload: true }
}
}
});
grunt.loadNpmTasks('grunt-contrib-watch');
};
Run Code Online (Sandbox Code Playgroud)
index.html
<!doctype html>
<html>
<head><title>Test</title></head>
<body>
<p>....</p>
<script src="//localhost:35729/livereload.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
然后我跑了grunt watch,什么都没吹.但是,没有浏览器窗口自动打开(应该吗?).
当我在http://localhost:35729/我收到这个json 时打开chrome :
{"tinylr":"Welcome","version":"0.0.4"}
Run Code Online (Sandbox Code Playgroud)
并尝试在该端口上的任何其他路径给我
{"error":"not_found","reason":"no such route"}
Run Code Online (Sandbox Code Playgroud) 我正在尝试在一个新项目上使用Polymer,并试图避免使用Bower支持NPM进行前端依赖管理.
在入门页面提供了使用鲍尔(和使用.zip文件等)的指令,但没有提及防范机制.
我之前通过直接指向GitHub仓库使用了NPM,但我似乎无法让它适用于Polymer.
当我运行这个:
npm install git@github.com:Polymer/polymer.git#v1.0.5
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
错误的ERR!notarget未找到兼容的版本:git@'github.com:Polymer/polymer.git'
错误的ERR!notarget有效的安装目标:
错误的ERR!notarget ["0.1.0","0.1.1","0.1.2","0.1.3","0.1.4","0.1.5"]
有什么我想念的,或者我需要咬紧牙关并使用Bower?
css ×2
javascript ×2
angularjs ×1
babeljs ×1
comments ×1
dom ×1
facebook ×1
forms ×1
groovy ×1
gruntjs ×1
html ×1
iife ×1
livereload ×1
npm ×1
polymer ×1
polymer-1.0 ×1
radio-button ×1
rest-client ×1
send ×1
spock ×1
testing ×1