私はnodejsで新しく、ノードを使用してシリアルポートに書きたいと思っていますが、ボタンでトリガされるようにします。そしてデータはテキストボックスから来ています。 コンソール/ターミナルでノードスクリプトを実行しているときに、自分のノードスクリプトが正常に動作しています。しかし、Webページのボタンではできません。ここで HTMLでhtmlボタンを使用してノード関数を実行する方法
<!DOCTYPE html>
<html>
<head>
<title>Node x HTML</title>
</head>
<body>
<script>
function write_serial()
{
var serialport = require("serialport");
var SerialPort = serialport.SerialPort;
var sp = new SerialPort("/dev/ttyACM0", {
baudrate: 9600,
parser: serialport.parsers.readline("\n")
});
var text = document.getElementById("textbox1").value;
sp.on('open', function()
{
sp.on('data', function (data)
{
sp.write(name);
});
});
}
</script>
<Input Type = "text" id = "textbox1" >
<BR>
<br><button onclick="write_serial();" href="javascript:;">Go!</button>
</body>
</html>
を埋め込まれた私のnodejsだここで私はページ(F12)あなたの助けを事前に
ReferenceError: require is not defined
感謝のコンソールを開いたときに私が得たエラーです。 :)
こんにちは、返信ありがとうございます。 最後の段落で、NodeJSスクリプト(ノードjsスクリプト、私は
NodeJSは、ブラウザ以外のJavaScript環境です。ほとんどのNodeJS機能は、ブラウザ環境では使用できないため、使用できません。
代わりに、Webエンドポイントを提供するローカルNodeJSプロセス(たとえば、Webサーバー、おそらくExpressを使用していますが、そうする必要はありません)を持って、そのNodeJSプロセスを実行してWebリクエストを待ちます。次に、あなたのWebページに、NodeJSサーバーへのajax呼び出しを行うボタンがあります。これは作業を実行します。
これは当然、サーバープロセスが実行されているマシンでのみ作業を実行できるようにします。
出典
2017-01-14 08:09:14
こんにちは、返信いただきありがとうございます。 私は実際には(同じネットワークに接続されている)別のデバイスがウェブページにアクセスしたいと思っています。 Expressは私のような初心者のための最善のソリューションですか? – Blanket
@Blanket:「ベスト」とは言えませんが、NodeJSを使用してWebサーバーを構築するためには非常に使いやすく、頻繁に使用されます。 –
こんにちは、ありがとう。私はエクスプレスを勉強し始めます。 – Blanket
たぶん、一方でhttps://wzrd.in/standalone/[email protected]
からSERIALPORTモジュールをインポートし、ビューからロジックを区切るしようとすると、アプリケーションが成長するかどうかは知らないか、それだけでPOCだ場合は、しかし、のMessageBrokerを使用しますか、あなたの行動をエンジンと結びつけるソケット?
希望します。
出典
2017-01-14 08:16:39 Mech45
こんにちは返信いただきありがとうございます。 あなたのリンクはhttp://www.npmjs.com/serialportも意味します – Blanket
ちょっと:)同じもの!私は説明をせずに-1を置く人々が好きではない:( – Mech45
私は仲間を知らない。 – Blanket