这个AngularJs代码在浏览器代码编辑器Nodejs中出了什么问题

时间:2016-09-08 08:00:01

标签: javascript python angularjs node.js code-editor

您正在尝试在浏览器代码编辑器中创建基础级别的高中生免费知识共享。经过与搜索的长期斗争,我获得了this链接。我只是按照该链接中提供的指导进行了一些设置和更改。

var express = require('express');
var path = require('path');
var app = express();
var bodyParser = require('body-parser');
//app.use(bodyParser.urlencoded());

app.use(bodyParser.urlencoded({
  extended: true
}));


//compileX
var compiler = require('compilex');
var option = {stats : true};
compiler.init(option);

app.get('/' , function (req , res ) {

	res.sendfile( __dirname + "/index.html");

});


//app.post('/compilecode' , function (req , res ) {
app.post('/' , function (req , res ) {

    
	var code = req.body.code;	
	var input = req.body.input;
    var inputRadio = req.body.inputRadio;
    var lang = req.body.lang;
    if((lang === "C") || (lang === "C++"))
    {        
        if(inputRadio === "true")
        {    
        	var envData = { OS : "windows" , cmd : "g++"};	   	
        	compiler.compileCPPWithInput(envData , code ,input , function (data) {
        		if(data.error)
        		{
        			res.send(data.error);    		
        		}
        		else
        		{
        			res.send(data.output);
        		}
        	});
	   }
	   else
	   {
	   	
	   	var envData = { OS : "windows" , cmd : "g++"};	   
        	compiler.compileCPP(envData , code , function (data) {
        	if(data.error)
        	{
        		res.send(data.error);
        	}    	
        	else
        	{
        		res.send(data.output);
        	}
    
            });
	   }
    }
    if(lang === "Java")
    {
        if(inputRadio === "true")
        {
            var envData = { OS : "windows" };     
            console.log(code);
            compiler.compileJavaWithInput( envData , code , function(data){
                res.send(data);
            });
        }
        else
        {
            var envData = { OS : "windows" };     
            console.log(code);
            compiler.compileJavaWithInput( envData , code , input ,  function(data){
                res.send(data);
            });

        }

    }
    if( lang === "Python")
    {
        if(inputRadio === "true")
        {
            var envData = { OS : "windows"};
            compiler.compilePythonWithInput(envData , code , input , function(data){
                res.send(data);
            });            
        }
        else
        {
            var envData = { OS : "windows"};
            compiler.compilePython(envData , code , function(data){
                res.send(data);
            });
        }
    }
    if( lang === "CS")
    {
        if(inputRadio === "true")
        {
            var envData = { OS : "windows"};
            compiler.compileCSWithInput(envData , code , input , function(data){
                res.send(data);
            });            
        }
        else
        {
            var envData = { OS : "windows"};
            compiler.compileCS(envData , code , function(data){
                res.send(data);
            });
        }

    }
    if( lang === "VB")
    {
        if(inputRadio === "true")
        {
            var envData = { OS : "windows"};
            compiler.compileVBWithInput(envData , code , input , function(data){
                res.send(data);
            });            
        }
        else
        {
            var envData = { OS : "windows"};
            compiler.compileVB(envData , code , function(data){
                res.send(data);
            });
        }

    }

});

app.get('/fullStat' , function(req , res ){
    compiler.fullStat(function(data){
        res.send(data);
    });
});

app.listen(8080);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<html>
<head>
	<title>Compilex</title>
	<script src="https://cdnjs.cloudflare.com/ajax/libs/PreloadJS/0.6.0/preloadjs.min.js"></script>
</head>
<body>
<center>

<form id="myform" name="myform" method="post" action="/">
<h3>Your Code</h3>
<textarea rows="13" cols="100" id="code" name="code" ></textarea> 
<br/>
<div>
	<input type="submit" value="submit"  name="submit" />
</div>
<div>
	<br/>
Language : <select name="lang">
  <option value="C">C</option>
  <option value="C++">C++</option>
  <option value="Java">Java</option>  
  <option value="Python">Python</option> 
  <option value="CS">C#</option>  
  <option value="VB">VB</option>  
</select>
Compile With Input : 
<input type="radio" name="inputRadio" id="inputRadio" value="true"/>yes
<input type="radio" name="inputRadio" id="inputRadio" value="false"/>No
</div>
<h3>Output</h3>
<textarea rows="10" cols="100" id="input" name="input" ></textarea> 

<br />

</form>
</center>
</body>
</html>

要求: 1.如何编译Python的输入(如何使用此应用程序配置) 2.如何在第二个textarea中显示输出。

(注意:花费大量时间使用codemirror,ace编辑器示例和演示,但不能有效地使用它作为这个平台的新手)

非常感谢

谢谢

2 个答案:

答案 0 :(得分:2)

实际上,你只有简单的HTML,并且那里没有使用angular的东西。

单独添加脚本标记不会产生某些东西&#34;角度代码&#34;。 顺便说一句,标签确实在错误的地方,它拥有一个古老的角度版本。到目前为止,您应该使用1.5.8版。如果您想了解如何使用angulular,请访问tutorial并阅读docsstyle-guide

如果你现在想用角度开始,可能更好的想法看看angular 2

答案 1 :(得分:0)

移动<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 进入<head>。不确定这是你的问题,但这是我书中调试过程的第一步。