をコンポーネントに反応する私のテストファイルインポートは、ここで絶対パスで
// /imports/components/main.test.js
import React from 'react'
import { shallow, mount } from 'enzyme'
import Main from './main'
import TextInput from "/imports/ui/textInput"
...
とmain.jsは
// /imports/components/main.js
import { action1 } from "/imports/actions/myAction"
を持っていますが、私は
を言って、テストを実行すると、エラーがスローされますCannot find module '/imports/actions/myAction' from 'main.js'
私がimport './main'
にコメントすると、同じことがT extInput。私はnode_modulesにモジュールをインポートすることに問題はありません。
プロジェクトディレクトリからの絶対パスを使用してコンポーネントをインポートするようにJestまたはwebpackに指示するにはどうすればよいですか(つまりimport Foo from /imports/...
)?
テストファイルの同じレベルにimportsという名前のディレクトリがある場合は、次のようなドットにする必要があります。** import TextInput from "./imports/ui/textInput"** – Hosar
申し訳ありません。私は基本的に内部/インポートであるコンポーネントとテストファイルのロケーションパスを追加しました。 – spondbob
では、main.test.js内の "../ui/textInput"から 'import TextInput、' ../actions/myAction "から' import {action1} 'のように簡単にインポートできます。絶対パスでインポートする場合は、webpack.configでエイリアスを行い、imports/actions/myActionから 'import {action1} 'のようにインポートする必要があります。 – Vikramaditya