小编Alc*_*dur的帖子

Mocha, Chai - 测试中的循环

我应该如何为应该测试的函数编写单元测试:50 < n < 100?有没有比循环测试更好的方法?我可以将参数传递给测试函数以根据该参数生成测试用例吗?前任。

it('should return $n+1', function(n){
  expect(add(n)).to.be.eql(n+1);
},[ 1, 2, 3])
Run Code Online (Sandbox Code Playgroud)

它应该将结果显示为 3 个不同的测试:

should return 1+1
should return 2+1
should return 3+1
Run Code Online (Sandbox Code Playgroud)

https://plnkr.co/edit/HBJP46lyTbBkH4Pclu2S

javascript unit-testing mocha.js chai

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

Vue 列表项不会在状态更改时重新呈现

我有一些对象数组,当用户单击按钮时,我获取新数组并显示一些结果。

它工作正常,直到我获取第二个数组。当我用一个元素获取第一个数组,然后用两个元素获取数组时,它只会更改(添加或删除)第二个元素。

我如何更改数组值:

fetchAsync(result){
  this.issue = result.body;
}
Run Code Online (Sandbox Code Playgroud)

issues得怎么样?

const issues = [
  {
    "id":100,
    "key":"DEMO-123",
    "summary":"Demo issue description",
    "devices":[
      {
        "id":100,
        "name":"iPhone6S",
        "browsers":[
          {
            "id":100,
            "name":"Safari",
            "displayVariants":[
              {
                "id":100,
                "issueKey":"DEMO-123",
                "state":1,
                "browserName":"safari",
                "user":"user-1",
                "landScope":false
              }
            ]
          }
        ]
      }
    ]
  }
]
Run Code Online (Sandbox Code Playgroud)

并且更改的值是 issues[].devices[].browsers[].displayVariants[].state

出现嵌套更改时如何强制 Vue 重新渲染此组件?


[ 编辑 ]

我呈现这样的问题:

  <tr v-for="issue in issues">
    <td>
      <div>{{ issue.key }}</div>
      <div class="issue-description">[ {{ issue.summary }} ]</div>
    </td>
    <template v-for="d in issue.devices">
      <td v-for="browser in d.browsers">
        <!--{{ d }}--> …
Run Code Online (Sandbox Code Playgroud)

javascript arrays vue.js vuejs2

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

带局部变量的嵌套循环

我有下面示例中的结构

new Vue({
  el: '#app',
  data: {
    tasks: ['task1', 'task2', 'task3'],
    actions: {
      'task1': {
        name: 'dig',
        time: '20min'
      },
      'task2': {
        name: 'run',
        time: '1h'
      },
      'task3': {
        name: 'drinking',
        time: 'all night'
      }
    }
  },
  template: `
    <ul>
      <li v-for="task in tasks">
        {{ actions[task].name }} will take {{ actions[task].time }}
      </li>
    </ul>
    `
})
Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.2.0/vue.js"></script>
<div id='app'></div>
Run Code Online (Sandbox Code Playgroud)

我想actions[task]转到一些局部变量,女巫将仅在循环中可见。data当数组中有更多对象时,我尝试将其移动到对象bu Vue抛出You may have an infinite update loop错误


[编辑]

模板原始部分下方

<tr v-for="issue in issues" …
Run Code Online (Sandbox Code Playgroud)

vue.js vuejs2

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

标签 统计

javascript ×2

vue.js ×2

vuejs2 ×2

arrays ×1

chai ×1

mocha.js ×1

unit-testing ×1