小编Ser*_*lov的帖子

如何在Webstorm中对抗大量未解决的变量警告

好的,我有一个从ajax获取数据的函数:

function getData(data){
    console.log(data.someVar);
}
Run Code Online (Sandbox Code Playgroud)

Webstorm说someVar- 是未解决的变量.我不知道如何处理这么多警告.

我看到几个选项:

  • 压制警告;
  • 添加带有字段的json源文件(更多详细信息);
  • 使用类似数组的语法:( data['some_unres_var']/** @namespace data.some_unres_var*/警告我不要这样做);
  • ???

Webstorm也让我为"数据"创建命名空间(添加注释someVar),创建这样的字段或重命名它.

javascript coding-style webstorm

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

VueJs 2.0中兄弟组件之间的通信

在vuejs 2.0 model.sync中将被弃用.

那么,在vuejs 2.0中兄弟组件之间进行通信的正确方法是什么?

我在Vue 2.0中发现的想法通过使用商店或事件总线进行兄弟姐妹的沟通.

埃文说:

值得一提的是"在组件之间传递数据"通常是一个坏主意,因为最终数据流变得无法跟踪并且很难调试.

如果一个数据需要由多个组件共享,则更喜欢 全局存储Vuex.

[ 链接到讨论 ]

和:

.once并且.sync已弃用.道具现在总是单向下降.要在父作用域中产生副作用,组件需要显式地emit显示事件而不是依赖于隐式绑定.

(所以,他建议使用$emit$on)

我很担心因为:

  • 每个storeevent具有全球知名度(纠正我,如果我错了);
  • 为每个次要的沟通创建一个新的商店是很重要的;

我想要的是以某种方式或兄弟姐妹组件的可见性范围.或者也许我没有抓住这个想法.eventsstores

那么,如何以正确的方式沟通?

javascript vue.js vue-component vuex vuejs2

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

如何使用v-on调用多个函数:单击

如何在单个v-on:click事件中调用多个函数?没有区别:点击,关注或其他什么?

就像是:

<div v-on:click="fn3('foo', 'bar')"> </div>

function fn3 (args) { 
  fn1(args);
  fn2(args);
}
Run Code Online (Sandbox Code Playgroud)

或者可能:

<div v-on:click="fn3('foo', 'bar')"> </div>

function fn3 (args) { 
  fn1(args);
  fn2(args);
}
Run Code Online (Sandbox Code Playgroud)

怎么做对了?

更新:是的,我当然可以做到

<div v-on:click="fn3('foo', 'bar')"> </div>

function fn3 (args) { 
  fn1(args);
  fn2(args);
}
Run Code Online (Sandbox Code Playgroud)

但这真的很难看.

javascript vue.js

70
推荐指数
12
解决办法
9万
查看次数

如何在不进行 npm install 的情况下更新 package-lock.json?

这是一种package-lock.json无需真正安装node_modules(如npm i)即可更新/生成的方法吗?我只需要一个package-lock.json基于我的有效package.json,就是这样。

动机

您(或您的同事)可能会使用yarn本地,当CI服务器使用npm。这可能不是最佳实践,但仍可能出于某些原因。

在一个完美的世界中,我想要一个命令来更新 package-lock.json

额外问题:对于yarn. 有没有办法在yarn-lock.json没有模块安装的情况下生成(yarn install)?

frontend node.js npm node-modules yarnpkg

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

我可以直接从AngularJS下的HTML访问模块常量

我想在html中直接使用少量常量,在控制器中几次使用.

例如,这是主要的app模块:

angular.module('website', [])
.constant('ROUTES', (function () {
    return {
        SIGN_IN: '/sign/in'
  }
})())
.config([..., 'ROUTES', function(..., ROUTES {
    $routeProvider.when(ROUTES.SIGN_IN, {templateUrl: 'pages/sign_in.html', controller:     'SignInController'});
}]);
Run Code Online (Sandbox Code Playgroud)

所以这很清楚,如何使用来自控制器的常量.

但我怎么能做这样的事情:

<html ng-app="website"> 
<body>
<a href="{{ROUTES.SIGN_IN}}">Sign in</a>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

关键是要将所有路线保持在一个地方.那么,我可以这样做,还是我可能选错了方式?

javascript angularjs

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

什么是Vue.js中端到端(e2e)测试的正确方法

因为我可以使用selenium-standalone和xpath来测试应用程序.但测试SPA可能会在某个时候发生挑战.

但是,例如angularjs的团队为此提供了量角器.

我可以看到量角器背后的原因是量角器等到angularjs将被加载并且还有更多的功能:

Protractor提供了一些新的定位器策略和功能,这对于AngularJS应用程序的自动化非常有用.示例包括:waitForAngular,By.binding,By.repeater,By.textarea,By.model,WebElement.all,WebElement.evaluate等.

所以,问题是:在Vuejs中进行e2e测试是否是任何工具或最佳实践?

UPD:随时发布指向教程的链接,示例以及关于vue.js中e2e-testing的一切.谢谢.

javascript selenium acceptance-testing vue.js e2e-testing

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

PHPStorm中的"资源根"名称是什么?就此而言,PHPStorm认为什么是资源?

也许我很厚,但是我无法理解在PHPStorm中创建项目时"资源根"按钮/名称是什么.查看了有关该主题的PHPStorm文档后,我发现的唯一解释是以下内容的变体:

"资源根目录:通过为此类别指定一个文件夹,您可以告诉PhpStorm可以相对于此文件夹引用其中和其子文件夹中的文件(而不是指定它们的完整路径).这些文件夹标有图标[purple目录] ]".

这不回答我的问题.

jetbrains-ide intellij-idea phpstorm webstorm

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

如何将WebStorm与Vue.js集成

WebStorm本身并不支持Vue.js(至少现在是2016年4月).

我找不到如何改善WebStorm体验的建议.现在我想在一个地方列出它们(我将在下面回答我自己的问题).

随意改善答案

jetbrains-ide intellij-idea phpstorm webstorm vue.js

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

如何在反应组件的子代中模拟e.preventDefault

我真的不知道如何在react组件的子代中模拟内联函数

我栈:sinon,chai,enzyme,

组件用法:

<ListItem onClick={() => someFn()} />
Run Code Online (Sandbox Code Playgroud)

组件的渲染:

render() {
    return (
      <li>
        <a href="#" onClick={e => {
            e.preventDefault();
            this.props.onClick();
          }}
        > whatever </a>
      </li>
    );
  }
Run Code Online (Sandbox Code Playgroud)

我们在这里onClick打电话e.preventDefault().如何告诉<a href>(link)不要打电话e.preventDefault()?我怎么能嘲笑那个onClick

以下我在测试中尝试:

浅拷贝设置

function setup() {
  const someFn = sinon.stub();

  const component = shallow(
    <ListItem
      onClick={() => {
        someFn();
      }}
    />
  );

  return {
    component: component,
    actions: someFn,
    link: component.find('a'),
    listItem: component.find('li'),
  } …
Run Code Online (Sandbox Code Playgroud)

unit-testing mocha.js sinon reactjs enzyme

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

如何在WebStorm中调试角度量角器测试

有一种方法可以在WebStorm中运行和调试量角器Web测试.我只想在这里分享这个答案

javascript node.js webstorm angularjs protractor

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