我使用angular with node并尝试连接到mysql DB。
我在此脚本(server.js)中使用节点mysql模块:
var mysql=require('mysql');
var connection = mysql.createConnection(
{
host : 'localhost',
user : 'root',
password : '',
database : 'mysql',
}
);
connection.connect();
var queryString = 'SELECT * FROM users';
connection.query(queryString, function(err, rows, fields) {
if (err) throw err;
for (var i in rows) {
console.log('Post Titles: ', rows[i].post_title);
}
});
connection.end();
我想用这样的角度运行js脚本:
var myApp = angular.module('myApp', []);
myApp.controller('AppListCtrl', ['$scope', '$http',
function($scope, $http) {
$http.get('../scripts/server.js').success(function(data) {
console.dir(data);
});
}
这不起作用(实际上没有执行js文件)。我是否必须用html包装我的js?我是以错误的方式来做这件事的吗?我想用js做这一切,而不是在这里使用php或其他语言。
答案 0 :(得分:1)
$http.get
方法执行AJAX请求,因此它会将js文件作为JavaScript使用的字符串。
您可能正在寻找的是JSONP,它将以JavaScript的形式执行您下载的任何文件。请尝试使用$http.jsonp
。