Javascript 从项目外部导入文件

Javascript 从项目外部导入文件,javascript,import,ecmascript-6,webpack,babeljs,Javascript,Import,Ecmascript 6,Webpack,Babeljs,我正在写两个项目,都是js。使用Webpack和babel。 我想创建文件夹common,其中包含每个项目中使用的文件。例如一些常数等 所以我有这样一个结构: |- project |- server |- config |- webpack.config.js |- package.json |- .babelrc |- ... |- client |- config

我正在写两个项目,都是js。使用Webpack和babel。 我想创建文件夹
common
,其中包含每个项目中使用的文件。例如一些常数等

所以我有这样一个结构:

|- project
    |- server
        |- config
           |- webpack.config.js
        |- package.json
        |- .babelrc
        |- ...
    |- client
        |- config
           |- webpack.config.js
        |- package.json
        |- .babelrc
        |- index.js
        |- ...
    |- common
        |- constants
            |- http-codes.js
但是,似乎不可能在项目之外导入文件。在
client/index.js
import*from'../common/constants/http codes.js'

你有什么想法可以这样做


更新:

档案:

common/constants/http code.js

export const SUCCESS = 200;
...
import { SUCCESS } from 'common/constants/http-codes.js';
...
console.log(SUCCESS);
...
const PATHS = {
    app: path.resolve(__dirname, '../'),
    build: path.resolve(__dirname, '../build'),
    common: path.resolve(__dirname, '../../common')
};
...
module.exports = {
    resolve: {
        extensions: [ '', '.js', '.jsx', '.styl' ],
        alias: {
            ...,
            common: PATHS.common
        }
    },
    ...
}

client/index.js

export const SUCCESS = 200;
...
import { SUCCESS } from 'common/constants/http-codes.js';
...
console.log(SUCCESS);
...
const PATHS = {
    app: path.resolve(__dirname, '../'),
    build: path.resolve(__dirname, '../build'),
    common: path.resolve(__dirname, '../../common')
};
...
module.exports = {
    resolve: {
        extensions: [ '', '.js', '.jsx', '.styl' ],
        alias: {
            ...,
            common: PATHS.common
        }
    },
    ...
}

client/config/webpack.config.js

export const SUCCESS = 200;
...
import { SUCCESS } from 'common/constants/http-codes.js';
...
console.log(SUCCESS);
...
const PATHS = {
    app: path.resolve(__dirname, '../'),
    build: path.resolve(__dirname, '../build'),
    common: path.resolve(__dirname, '../../common')
};
...
module.exports = {
    resolve: {
        extensions: [ '', '.js', '.jsx', '.styl' ],
        alias: {
            ...,
            common: PATHS.common
        }
    },
    ...
}

您是否尝试从nodejs使用路径模块?

您是否尝试从nodejs使用路径模块?

它在网页包配置中使用。但它没有帮助。请尝试将其与normalize方法一起使用,添加.././等。尝试在index.js文件中使用
path.normalize('../common/constants/http codes.js')
。它在网页包配置中使用。但它没有帮助。请尝试将其与normalize方法一起使用,添加.././等。尝试在index.js文件中使用
path.normalize('../common/constants/http codes.js')
不应该是
“../common/constants/http codes.js”?@saadq,一定不是,因为我使用了webpack的别名。
'common/constants/http codes.js'
不应该是
“../common/constants/http codes.js”?@saadq,一定不能,因为我使用了webpack的别名。