2013-06-04 39 views
6

Tôi đang sử dụng nút-webkit với mô-đun bên ngoài được gọi là edge.Node-Webkit với mô-đun bên ngoài có chứa mã gốc

Theo mô-đun tài liệu của nút-webkit chứa mã gốc phải được biên dịch lại bằng cách sử dụng nw-gyp như trái ngược với node-gyp. Tôi đã có thể biên dịch lại mà không có lỗi và nút-webkit dường như nhập khẩu các mô-đun OK.

Heres mã của tôi. Mã tôi đang cố gắng sử dụng:

var edge = require('edge.node'); 

var hello = edge.func(function() {/* 
async (input) => 
{ 
    return ".NET welcomes " + input.ToString(); 
} 
*/}); 

hello('Node.js', function (error, result) { 
if (error) throw error; 
console.log(result); 
}); 

Điều gì sẽ xảy ra lỗi sau khi chạy trong nút-webkit.

Uncaught TypeError: Object [object Object] has no method 'func' 

Nếu viết các đối tượng ra console.log tôi có thể thấy:

Object {initializeClrFunc: function} 
initializeClrFunc: function() { [native code] } 
__proto__: Object 

Vì vậy, các mô-đun dường như đã nạp. Nếu tôi chạy cùng một mã bên ngoài nút-webkit, mọi thứ hoạt động hoàn hảo và tôi có thể truy cập chức năng func. Điều này khiến tôi phát điên - và bất kỳ sự trợ giúp nào cũng sẽ được đánh giá cao.

+1

+1, những gì bạn đang cố gắng tạo ra âm thanh rất thú vị. Edge là _extremely_ công nghệ thử nghiệm, bạn có thể muốn mở một vấn đề trong github của họ. –

+0

Vâng - đã làm điều đó. Thực sự cần phải thử và điều này để làm việc cho một ứng dụng hiển thị trường hợp mà tôi đang xây dựng. – user1513388

Trả lời

0

func phương pháp được cung cấp bởi edge.js, trình bao bọc xung quanh edge.node mô-đun gốc. Vì vậy, bạn nên thay thế require('edge.node') theo require('edge').