7

バックスラッシュとフォワードスラッシュに関するWindowsからLinuxおよびMacへのnode.jsの不一致を修正する方法はありますか?

Windowsでは、で場所を呼び出すときにバックスラッシュがgit bash必要ですが、Mac/Linuxではスラッシュが必要です。私はMacユーザーとWindowsユーザーの両方でプロジェクトに取り組んでいるため、コード内ですべてのスラッシュをバックスラッシュに変更することはできません。Macユーザーがプルすると、コーヒーが適切に実行できなくなり、その逆も同様です。

これに対する解決策はありますか?

4

2 に答える 2

15

パスを入力する代わりに、必ずパスメソッドを使用してください。path.normalize()クロスプラットフォームを開発するときにpath.join()特に役立ちます。

Windowsの場合:

$ node
> var p = require('path')
undefined
> p.normalize('/hey/there/you')
'\\hey\\there\\you'
> p.join('/hey', 'there', '/you')
'\\hey\\there\\you'

Linuxの場合:

$ node
> var p = require('path')
undefined
> p.normalize('/hey/there/you')
'/hey/there/you'
> p.join('/hey', 'there', '/you')
'/hey/there/you'

お役に立てれば。

于 2013-03-12T15:08:35.417 に答える
1

チャドの答えに加えて、パスを作成するときは次のことができます。

var path = require("path");
"hey" + path.sep + "there" + path.sep + "you"

また

["hey", "there", "you"].join(path.sep);
于 2013-03-12T15:21:19.930 に答える