html模拟终端,shell – Meteor JS在客户端html上模拟服务器命令行

一名Meteor初学者在尝试根据教程创建一个简单的命令行应用时遇到问题,应用在MacOSXMavericks上运行显示空白。他们已经按照教程提供的代码进行操作,但点击“运行”按钮后输入的命令没有响应。问题在于无法模拟服务器端的命令行。开发者询问如何调试并寻求解决方案。
摘要由CSDN通过智能技术生成

我是Meteor的新手,想要制作一个简单的应用程序.根据

http://terokaisti.blogspot.com/2012/10/writing-terminal-app-with-meteor-js.html,我无法模拟服务器端的命令行

在客户端(Mac OSX Mavericks),结果只是空白我输入命令并点击“运行”按钮.我正在使用上面网站的确切代码,除了我有autorun和exec = Npm.require(‘child_process’).exec;

下面是我的html和js文件……

TerminalApp.html

MeteorJS terminal

{{> terminal}}

{{ window }}

TerminalApp.js

// A collection for stdouts

var Replies = new Meteor.Collection('replies');

if(Meteor.is_client) {

// Start listening changes in Replies

Meteor.autorun(function() {

Meteor.subscribe('replies');

});

// Set an observer to be triggered when Replies.insert() is invoked

Replies.find().observe({

'added': function(item) {

// Set the terminal reply to Session

Session.set('stdout',item.message);

}

});

// Show the last command in input field

Template.terminal.last_cmd = function() {

return Session.get('last_cmd');

};

// Show the last shell reply in browser

Template.terminal.window = function() {

return Session.get('stdout');

};

// Add an event listener for Run-button

Template.terminal.events = {

'click [type="button"]': function() {

var cmd = $('#command').val();

Session.set('last_cmd',cmd);

// Call the command method in server side

Meteor.call('command',cmd);

}

};

}

if(Meteor.is_server) {

var exec;

// Initialize the exec function

Meteor.startup(function() {

exec = Npm.require('child_process').exec;

});

// Trigger the observer in Replies collection

Meteor.publish('replies',function() {

return Replies.find();

});

Meteor.methods({

'command': function(line) {

// Run the requested command in shell

exec(line,function(error,stdout,stderr) {

// Collection commands must be executed within a Fiber

Fiber(function() {

Replies.remove({});

Replies.insert({message: stdout ? stdout : stderr});

}).run();

});

}

});

}

我错过了什么?我怎么调试?提前致谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值