前提・実現したいこと
Ruby内でjavascriptファイルをを読み込んで使いたい
Rubyでサーバー側の実装を行い、node.jsでブロックチェーン周りの接続をできるようにしたい。
execjsを使って、Ruby内で単純なjavascriptファイルを読み込むことはできるのですが、
以下のような構文をrbファイル内でコンパイルしようとすると下記の
context = ExecJS.compile(source)の部分でエラーが起こります。
execjsで以下のような構文は読み込めないのでしょうか?
もしくは読み込むために他にツールが必要なのでしょうか。
初歩的なところでつまずいてしまって、大変恐縮ですが、知恵を貸して頂けますと幸いです。
よろしくお願いいたします。
発生している問題・エラーメッセージ
console
1ExecJS::ProgramError (TypeError: require is not a function): 2 3(execjs):1:271 4(execjs):12:14 5(execjs):1:102
該当のソースコード
JS
1const express = require('express'); 2const app = express(); 3const http = require('http').Server(app); 4const io = require('socket.io')(http); 5 6const web3 = new (require("web3")); 7web3.setProvider(new web3.providers.WebsocketProvider("ws://localhost:7545")); 8 9app.use("/", express.static(__dirname + '/')); 10 11io.on('connection', (socket) => { 12 socket.on('call_mining', (msg) => { 13 web3.eth.isMining().then((result) => { 14 socket.emit('msg', 'mining=[' + JSON.stringify(result) + ']'); 15 }); 16 }); 17・ 18・ 19・
Ruby
1source = open("/PATH/TO/javascripts/app.js").read 2 3context = ExecJS.compile(source)
試したこと
nodeのインストールはして、バージョンも変更してみた
npm installでインストールはしてみた
requireが書かれていないもっと単純なjsファイルがコンパイルできることは確認した
execjsをgemfileに記載済み
補足情報(FW/ツールのバージョンなど)
rails 5.2.2
ruby 2.4.4
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2019/03/21 05:18