让我们再说一次:我不需要process.cwd
,我需要
访问源项目的绝对路径。例如:
C:\Users\user1\projects\lib1\src\library.ts
(将来会成为Node Module)C:\Users\user1\projects\someProject\src\someProject.ts
因此,我需要将C:\Users\user1\projects\lib1\src
内的library.ts
。
我尝试过:
webpack.config.js
module.exports = {
// ...
target: 'node',
externals: [nodeExternals()],
plugins: [
new Webpack.DefinePlugin({
__PROJECT_ROUTE_ABSOLUTE_PATH__: __dirname
})
]
};
project-types.d.ts
declare var __PROJECT_ROUTE_ABSOLUTE_PATH__: string;
如果尝试在无效JavaScript下方的console.log(__PROJECT_ROUTE_ABSOLUTE_PATH__)
中使用library.ts
将产生:
console.log(C:\Users\user1\projects\lib1);
该路径正确,但是缺少引号。我不知道该怎么解释。 但是无论如何,我们如何找到正确的道路?
还有一个奇怪的现象:如果调用__dirname
,则仅返回/
,因此path.resolve(__dirname, 'fileName') gives
C:\ fileName`
答案 0 :(得分:1)
您可以直接使用内置的node.js SELECT SUM(D.A), SUM(D.B), SUM(D.AB) FROM
(
select A, B, case when U.A > 0 AND U.B > 0 THEN 1 end AS AB
from (
select count (distinct case when I.ItemNo = 'A' then customerNo end) as A,
count (distinct case when I.ItemNo = 'B' then customerNo end) as B
from Items as I
group by I.customerNo
) AS U
) AS D;
模块。
路径模块提供了用于处理文件和目录路径的实用程序。可以使用以下方式访问它:
path
__ filename是当前模块的文件名。这是当前模块文件的解析绝对路径。 (例如:/home/user/some/dir/file.js)
__ dirname是当前模块的目录名称。 (例如:/ home / user / some / dir)
const path = require('path');
这将解析为文件的路径。