我有一个AngularJS应用程序,我有services调用$http资源并返回promise我在控制器中解析的.以下是我正在做的一个示例:
app.service('Blog', function($http, $q) {
var deferred = $q.defer();
$http.get('http://blog.com/sampleblog')
.then(function(res) {
// data massaging stuffs
return deferred.resolve(res.data);
}, function(err) {
// may be some error message checking and beautifying error message
return deferred.reject(err);
});
// chain if further more HTTP calls
return deferred.promise;
});
Run Code Online (Sandbox Code Playgroud)
但我也可以简单地做以下事情:
app.service('Blog', function($http) {
return $http.get('http://blog.com/sampleblog');
});
Run Code Online (Sandbox Code Playgroud)
然后在controller关卡中进行验证,错误美化,链接承诺等.
我的问题是:在代码弹性和灵活性方面,哪个被认为是"最佳实践"?或者有更好的方法来完成与此完全不同的方式吗?
(这不是重复)我们在所有4个侧面都有一个由X围绕的2D迷宫,也有内部块.
迷宫的所有这些字符都存储在2D数组中.程序必须找到从"S"开始到目标"G"的路径.为此,使用名为'solve(int row,int col)的布尔方法,并使用'S'的行和列索引进行初始化.算法必须是递归的.如果它能够找到'G'的路径并且其他方面是假的,那么它应该返回true.这是我试图解决这个显示"部分正确结果"的问题的方法.
public boolean solve(int row, int col) {
char right = this.theMaze[row][col + 1];
char left = this.theMaze[row][col - 1];
char up = this.theMaze[row - 1][col];
char down = this.theMaze[row + 1][col];
if (right == 'G' || left == 'G' || up == 'G' || down == 'G') {
return true;
}
System.out.println("position=>"+"("+row + ":" + col+")");
if (right == ' ') {
return solve(row,col+1);
}
if (down == ' ') {
return solve(row+1,col);
}
if (left …Run Code Online (Sandbox Code Playgroud) 这是我的程序说明.我尝试创建一个数据库连接类,它具有不同的方法,它们从数据库中提取记录的方式不同.
我要做的是 - 将类属性设置为PDO连接参数并创建具有这些属性的默认构造函数.每当我需要数据时,我都会调用那些应该返回记录的方法.
问题是:我想我的用于创建PDO对象的连接字符串是正确的,但它会显示错误,说明未捕获的异常'PDOException',消息'SQLSTATE [HY000] [2002]无法通过套接字连接到本地MySQL服务器'/ var/lib/mysql/mysql.sock'(2)
你能帮我解决一下真的发生了什么吗?您还可以与我分享创建安全,健壮且可动态访问的数据库类或方法的技术和想法吗?我非常感谢.提前致谢!
代码:
<?php
class DatabaseConnection {
private $hostname;
private $dbname;
private $username;
private $password;
public function __construct() {
$this->hostname = "hostname";
$this->dbname = "database";
$this->username ="username";
$this->password = "password";
}
function getDataFromTable($query){
echo $dns;
$db = new PDO("mysql:host = {$this->hostname} ; dbname = {$this->dbname}", $this->username, $this->password);
// stuffs ...
}
}
?>
Run Code Online (Sandbox Code Playgroud) 最近我做了一个用离子框架构建的应用程序.现在,当弹出窗口显示时,后退按钮出现问题.当我按下物理后退按钮时弹出窗口关闭,现在我需要它按下物理后退按钮时显示,所以我找到所有解决方案来禁用物理后退按钮,但没有一个工作.有没有人可以帮我这个?