目錄結構
/project-root
│
├── main.py
└── js
├── sha1.js
└── index.js
main.py
import os
import execjs
# 將js資料夾路徑設定到 NODE_PATH 環境變數即不會引發require匯入時找不到包的問題
current_dir_path = os.path.dirname(os.path.abspath(__file__))
js_module_dir = f'{current_dir_path}/js'
os.environ['NODE_PATH'] = js_module_dir
with open('./js/index.js') as f:
js_str = f.read()
js_ctx = execjs.compile(js_str)
js_ctx.call(add, 1, 2)
index.js
const CryptoJS = require('./sha1.js')
function add (a, b) {
return a + b
}