小编Tim*_*Tim的帖子

如何修复错误"用户管理员不允许访问包"

我现在更新并运行节点v5.0.0 npm v3.3.6

在Mac上(El Capitan)

当我现在在我的项目上运行"npm install"时.我得到这样的错误:

me:controls me$ sudo npm install
npm ERR! Darwin 15.0.0
npm ERR! argv "/usr/local/Cellar/node/0.10.36/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v5.0.0
npm ERR! npm  v3.3.6
npm ERR! code E403

npm ERR! user admin is not allowed to access package chai : chai
npm ERR! 
npm ERR! If you need help, you may report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/me/Dev/controls/npm-debug.log
Run Code Online (Sandbox Code Playgroud)

我没有在网络上看到任何解决方案呢?我尝试了sudo而不是sudo并没有任何区别.

有什么建议?

npm

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

Angular 5组件-如何获取内容中的所有输入

我正在研究组件,我想实现一个功能,该功能着眼于ng-content内部的第一个输入元素。

因此,我严格按照以下模板代码尝试此操作,并尝试使用ViewChildren和ContentChildren。

@Component({
  selector: '[my-component]', // tslint:disable-line
  template: `<div class="my-container">
        <ng-content></ng-content>
      </div>`
})
export class MyComponent implements AfterViewInit, OnDestroy {

  @ViewChildren('input') vc;
  @ContentChildren('input', {descendants: true}) cc;

  ngAfterViewInit() {
    //Nothing in either QueryList ???
    console.log(this.vc, this.cc);
  }

  focus () {
    //Nothing in either QueryList ???
    this.vc.first.nativeElement.focus();
  }
}
Run Code Online (Sandbox Code Playgroud)

在模板/页面中使用组件时,它看起来大致如下:

<div my-component>
  <div class="field"><input></div>
  <div class="field"><input></div>
  <div class="field"><input></div>
  <div class="field"><input></div>
  <div class="field"><input></div>
</div>
Run Code Online (Sandbox Code Playgroud)

再说一遍,我想获得的是所有出现在内容中的输入元素,它们也可以埋在div和wrapper中。看来ContentChildren应该是正确的,但它没有返回任何元素。即QueryList.results为空。

我在做错什么或如何在内容区域内获取输入?

angular-components angular

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

如何判断 mac 显示滚动条设置是否始终打开

Mac OS 在常规下提供了一个设置,您可以将显示滚动条设置为始终打开。当我这样做时,我遇到了额外滚动条的问题,我想通过添加一些边距来缓解。但如果此设置关闭并且滚动条被隐藏,这会导致间隙。

在 chrome 上我可以通过以下方式判断滚动条是否打开:

this.bodyWrapperRight[0].offsetHeight - this.tableRight[0].offsetHeight > 0
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我比较具有溢出的容器宽度:滚动到内部元素的宽度。

但这似乎不适用于 Mac 上的 Firefox 或 Safari。我正在寻找某种方法来判断滚动条是否设置为始终可见?

javascript css macos

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

标签时,光滑的网格跳过列

有没有办法可以防止用户在使用光滑网格时通过特定列进行制表?

我希望标签跳转到一个只读列,其中任何一方都有编辑器.

slickgrid

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

为给定的十六进制背景值找到正确的 WCAG AA 对比色

我正在尝试为给定的背景颜色找到正确的匹配对比色,该颜色将通过 WCAG AA 指南(文本小于 14 像素)。

我看到的算法是..

  function getContrastYIQ(hexcolor){

    var r = parseInt(hexcolor.substr(1,2),16);
    var g = parseInt(hexcolor.substr(3,2),16);
    var b = parseInt(hexcolor.substr(5,2),16);
    var yiq = ((r*299)+(g*587)+(b*114))/1000;

    return (yiq >= 128) ? 'dark-color' : 'light-color';   }
Run Code Online (Sandbox Code Playgroud)

参考:http : //optional.is/required/2011/01/12/maximum-color-contrast/

但是,对于这些颜色,某些颜色(如 #e8540a 和 #ff4249)在未通过颜色对比度准则时返回浅色。

我可以使用 JS 中的另一个算法/函数返回一个有效的对比色,而不是通过这些指南?

http://squizlabs.github.io/HTML_CodeSniffer/似乎有正确的算法......但似乎无法找到相关代码来转换为 JS。有人有什么建议吗?

javascript wcag2.0

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

CSP - 如何解决 style-src unsafe-inline - 当具有动态定位的页面元素时

在我们的应用程序代码中,我们允许一些对象在页面上拖放。此外,我们还有诸如弹出窗口之类的东西,它们需要定位在我们在页面中定位的按钮和对话框下方。

为此,我们需要允许以下内联 css 属性

  • z-索引
  • 上、下、左、右
  • 高度宽度

我们真的不能为此创建类,想象一下,例如左边可能是 0 到 20000,所以我们需要数百万个类。

除了内联css之外,我看不到任何其他方式。

所以要解决 CSP ( https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP ) 那么这意味着我们需要完全允许style-src: unsafe-inline

我确定这是一个常见的场景。人们如何看待这个案子?我们还使用 veracode 来扫描我们的软件,所以我认为我们只是通过解释我们只允许一组内联 css 属性来“模仿”这一点。

但我认为也许 CSP 应该允许动态 css 属性的某个子集。

有没有人遇到过这种情况并有任何想法?

javascript css content-security-policy

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

当slickgrid失去焦点时如何进行单元格保存

我有一个带有一些编辑器的SlickGrid,表单上面有一些按钮.(保存并取消).当我编辑网格中的单元格并单击网格上方的按钮时 - 单元格不会提交它的编辑.我调试了它并没有调用:commitCurrentEdit.我还测试了点击网格区域外任何地方的空白区域...

有没有人注意到这种情况,并有一个解决方案,当一个单击网格时让单元格提交.由于网格良好的各种位置,很难进行叠加.

谢谢

slickgrid

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

将输入字段值设置为外部字符

如果我指定一个输入字段值,如下所示:

 <input type="text" id="requiredField" value="Lait &#233;cr&#233;m&#233;"/>
Run Code Online (Sandbox Code Playgroud)

文本将在输入中显示为:Laitécrémé,如果我使用jQuery.val()执行此操作...

$("#requiredField").val("Lait &#233;cr&#233;m&#233;");
Run Code Online (Sandbox Code Playgroud)

它不会正确显示......

对此问题的任何建议?或者这可能是一个jQuery错误?有转换这个的命令吗?

注意:页面是utf8

jquery character-encoding

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

我如何 npm 发布“不稳定”或“开发”包

在我们的工作流程中,我们有两个 git 分支 master 和 develop。我们保持 master 稳定,并且 develop 分支中有未经测试的工作。

我们想让团队使用 npm 将开发工作拉下来进行测试/或者如果他们需要它并且对它感到满意。

但是,我不确定如何使用 npm 发布它?

我们现在有这个:

npm info @mycompany/mypackage dist-tags
{ latest: '4.2.1-rc.1' }
Run Code Online (Sandbox Code Playgroud)

我想看到的是类似的东西

npm info @mycompany/mypackage dist-tags
{ latest: '4.2.1-rc.1' , develop: '4.2.1'}
Run Code Online (Sandbox Code Playgroud)

然而,为了做到这一点,我尝试npm publish ./ --tag=develop了这样做,实际上我得到了这个:

npm info @mycompany/mypackage dist-tags
{ latest: '4.2.0 , develop: '4.2.1'}
Run Code Online (Sandbox Code Playgroud)

也就是说,我希望最新/默认为“最新”,如果拉动标签“开发”,它们会变得不稳定(从技术上讲是“更新”)。

这是为此使用 npm 的正确方法吗?如果不是什么是?以及如何实现?

npm

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

在 intlDateTimeFormat 中使用非阿拉伯数字

似乎找不到这个问题的答案,所以在这里提问。我想在阿拉伯语区域设置中使用非阿拉伯数字,这可能吗?

\n
const intlDateTimeFormat.format(new Date());\nintlDateTimeFormat = new Intl.DateTimeFormat('ar-SA', { month: 'short', day: 'numeric' });\n// "\xd9\xa2\xd9\xa0 \xd8\xb4\xd9\x88\xd8\xa7\xd9\x84"\n
Run Code Online (Sandbox Code Playgroud)\n

但我想要...

\n
const intlDateTimeFormat.format(new Date());\nintlDateTimeFormat = new Intl.DateTimeFormat('ar-SA', { something? , month: 'short', day: 'numeric' });\n// "01 \xd8\xb4\xd9\x88\xd8\xa7\xd9\x84"\n
Run Code Online (Sandbox Code Playgroud)\n

有什么建议

\n

javascript

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

附加整个SVG元素或元素系列

使用d3将一系列svg元素追加到特定选择的最佳方法是什么.例如......首先我添加一个矩形.

        tb.append("svg:rect")
        .attr("width", "18")
        .attr("height", "18")
        .attr("y", "9")
        .attr("x", (i * 20) + 5)
        .attr("rx", "4")
        .attr("ry", "4");
Run Code Online (Sandbox Code Playgroud)

现在依赖于我想附加图标的选项.图标可以是一系列路径或rects或多边形.但是是动态的并且基于选项.所以我想做一些像:

tb.append('<path d="M9.826,4.703C8.863,3.057,7.014,2.032,5.001,2.032c-2.012,0-3.861,1.024-4.829,2.671L0,5l0.173,0.299C1.141,6.944,2.99,7.968,5.001,7.968c2.012,0,3.862-1.023,4.825-2.669L10,5L9.826,4.703z M8.451,5.189C7.764,6.235,6.441,6.888,5,6.888c-1.438,0-2.762-0.652-3.453-1.698l-0.124-0.19l0.124-0.188C2.239,3.764,3.562,3.112,5,3.112c1.441,0,2.763,0.651,3.451,1.698l0.125,0.188L8.451,5.189z"/><circle cx="4.999" cy="5" r="1.905"/>');
Run Code Online (Sandbox Code Playgroud)

要么

tb.append('<polygon points="8.272,0 5.8,4.166 9,4.166 1.615,10 3.461,5 1,5 3.743,0.007"/>');
Run Code Online (Sandbox Code Playgroud)

但我不知道元素类型或变化的属性,因为它被输入.是否有一个模式只是插入整个元素作为字符串?还是更好的模式?

d3.js

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

如何附加、查询和检查 DOM 元素

与柏树一起工作。我试图将一个新元素附加到页面并检查它是否渲染正常。(我们的代码有一个错误)。我想出的测试看起来像:

it('should be able to set attributes before append', () => {
  cy.get('body').then(() => {
    const elem: any = document.createElement('ids-tag');
    elem.color = 'red';
    elem.clickable = true;
    elem.dismissible = true;
    elem.id = 'test';
    document.body.appendChild(elem);

    cy.get('#test')
      .invoke('attr', 'color')
      .should('eq', 'red');
  });
});
Run Code Online (Sandbox Code Playgroud)

然而,这是失败的,因为我认为该元素附加在不同的主体中。所以有几个问题:

  1. 这是在 cypress 中测试 createElement 的好方法吗?
  2. 我怎样才能去cy.get('#test')上班

没有找到太多关于如何在 cypress 中附加到 DOM 的信息。

cypress

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