2017-02-23 20 views
3

ここにNodeJを学習してください。問題は、私が回答を検索しようとしたとき、私が探しているものが見つからないときです。おそらくこれはあまりにも基本的であるか、または問題ではないからでしょう。nodejsインポートが必要です変換

私はangular2でnodejsに取り組んでいます。だから、当然、私のようなものがあります:

import { stuff } from 'some_module' 

をしかし、私はの使用例を持っているパッケージで動作するようにしようとしています:

明らか
var stuff = require('some_module') 

、私は輸入などを使用するときに私のコードは動作しませんでした私はここに投稿していないだろう。私は何か間違っているからですか?または、この特定のモジュールがインポートで動作しないなど運が悪いですか?誰かがrequire( 'some_stuff')の使用例を見ると、適切なimport文を書く方法について少し光を当てることができるので、npmからダウンロードする他のモジュールを使うことができますか?

ありがとうございます。

編集: したがって、npm install requirejs --saveを試しました。それから上記のrequire文を書いた。しかし、私はパッケージに404を取得しています...

+0

? –

+0

インポートに必要なものと同等のものがあるかどうかは私の混乱だと思いますか?あるいは、私はangular2コンポーネントに "require"と書かなければなりませんか? – user691856

+0

基本的にどちらも同じ仕事をしています... ES6の新しい構文やES5の古い構文を使用しているノードで角張って使用しているもの(ES5とES6はJSのバージョン名です) 。私の意見では、より新しい構文(ノードの新しいバージョン、つまり6.9を使用するか古いバージョンでbabelを使うことができます) –

答えて

2

インポートを使用することができますが、あなたはbabelでアプリケーションを実行する必要があります。あなたはpackage.jsonファイル

"scripts": { 
    "start": "NODE_ENV=production node_modules/.bin/babel-node --presets 'es2015' src/server.js", 
    "build": "NODE_ENV=production node_modules/.bin/webpack -p" 
    }, 
    "dependencies": { 
    "babel-cli": "^6.11.4", 
    "babel-core": "^6.13.2", 
    "babel-loader": "^6.2.5", 
    "babel-preset-es2015": "^6.13.2" 
    }, 
    "devDependencies": { 
    "http-server": "^0.9.0", 
    "webpack": "^1.13.2", 
    "webpack-dev-server": "^1.14.1" 
    } 

のsrc/server.jsファイルがメインファイルの場所が

で、次のコマンド

でファイルを実行するには、この行を追加する必要が

npm run start

import { stuff } from 'module'; を使用すると、プログラム内にstuff()を直接使用できます。

いますが、var stuff = require('module'); を使用するときに、あなたのプログラムにstuff.stuff()を行う必要があります。

+0

これが面白いと面白いですが、いったんサポートされれば、私のコードをリファクタリング/変更する必要がありますか?あなたが好きなら、 – user691856

+0

はい。あなたはhttps://github.com/500tech/nodejs-express-es6/ –

0

これは、元の構文

var stuff = require('some_module')

はあなたのために働いていないことは興味深いです。あなたのアプリがAngular CLIからスキャフォールドされていた場合、それはすぐにインポートと必要なステートメントの両方をサポートするはずです。例えば

、私はこのような角度2の成分でMSRを使用しています:あなたは右、ノードに必要使いたいわけ

var MediaStreamRecorder = require('msr'); 
+0

から他の例を取ることができます。私が必要とするように見えますが、私のライトサーバデバッグは、私が指しているパッケージに404を与えています...私node_modulesフォルダ内のrequireの相対パスを指定する必要はありませんか?私が間違っている? – user691856

関連する問題