我很反应新闻并寻求澄清。我有一个相当简单的reactJS应用程序与几个组件和一个实用程序javascript文件包含我希望能够从每个组件调用的函数。
我的util.js文件看起来像这样:
export function printMe(txtToPrint){
console.log(txtToPrint);
}
export function addUs(a,b){
return a + b;
}
我的ComponentA看起来像这样:
import React, {Component} from 'react';
import {printMe, addUs} from './util';
...
我的文件夹结构如下:
/src
/src/components/componentA/componentA.js
/src/util.js
当我运行应用程序时,收到错误消息:
Module not found: './util' 'src/components/componentsA'
但是,当我将componentA上的import语句更改为如下所示:
import React, {Component} from 'react';
import {printMe, addUs} from '../../util';
一切正常。我/在印象中./是src的位置。不是这样吗?
答案 0 :(得分:2)
网址是相对于声明它们的文件。
如果您在componentA.js中:
./
位于componentA文件夹中,
../
位于components文件夹中,
../../
位于src文件夹中。这就是为什么这个有效的原因
点击此处了解详情:https://webpack.github.io/docs/resolving.html#resolving-a-relative-path