1

export default我遇到了一个奇怪的问题,即在模块上使用时 Jest 似乎不起作用。

我创建了一个示例存储库来重现该问题:https ://github.com/syropian/jest-test

它的要点是,给定这个模块:

const a = {
  greet () {
    return 'Hello World'
  }
}

const b = {
  foo () {
    return 'bar'
  }
}

export default {
  a,
  b
}    

这有效:

import myModule from '../src'

describe('My module', () => {
  it('works if I import the whole module', () => {
    const greeting = myModule.a.greet()
    const foo = myModule.b.foo()
    expect(greeting).toBe('Hello World')
    expect(foo).toBe('bar')
  })
})

但这导致a并且bundefined

import { a, b } from '../src'

describe('My module', () => {
  it('works if I import individual exports', () => {
    const greeting = a.greet()
    const foo = b.foo()
    expect(greeting).toBe('Hello World')
    expect(foo).toBe('bar')
  })
})

.babelrc有关设置等,请参阅提供的存储库。

使用节点7.3.0

4

0 回答 0