AngularJS怎么直接连接数据库

AngularJS怎么直接连接数据库,第1张

很简单

最流行的方法是调mongo 因为 mongo可以通过restful服务调用

另外早在十几年前 应该是00年 oracle sqlserver都支持XML服务了 只不过默认不开启

或者可以写一个通用的接口 java的 php什么语言都可以 只要传入SQL 返回json结果集就行了

-------我是华丽的分割线---------

不懂可以继续追问

会给你更好地建议,帮助解决可困难,喂百度知道做贡献

第一步:准备工作

 将AngularJS脚本添加到该文档的当中:

在此之后,可以在将这套CCS样式添加到行内或者独立的文件当中:

*{

-webkit-box-sizing:border-box

-moz-box-sizing:border-box

box-sizing:border-box

font-family:sans-serif

}

body,html{margin:0}

p{margin:0}

input{width:100%}

pre{

white-space:pre-wrap

white-space:-moz-pre-wrap

white-space:-pre-wrap

white-space:-o-pre-wrap

word-wrap:break-word

}

div.repo{

border-bottom:1pxsolid

cursor:pointer

}

#search,#repo,#user{float:left}

#search{width:20%}

#repo{width:60%}

#user{width:20%}

如大家所见,其中不存在任何多余的内容、只保留最基础的布局方案——将搜索栏置于右侧、库信息位于中央、用户库同样置于右侧。我们还需要将对应代码行打包至标签当中,此后我们还要利用它显示README文件内容——因为这些内容通常来自GitHub Flavored Markdown、而且其中一部分代码行与用户库列表存在重叠。

当然,大家可以向其中添加更多样式以提升成果的视觉效果——但请注意,本教程中的截图都采取最基本的外观设计。

大家可以未来需要编写的JavaScript代码置于本文档的当中或者为其建立独立文件,但独立文件仍然需要处于AngularJS脚本之下。

第二步:模块

现在我们可以为自己的应用程序创建一个模块:

varapp=angular.module('githubsearch',[])

接下来利用ngApp指令将其添加到标签当中:

第三步:控制器

我们还需要为自己的应用程序准备一套控制器。为了简化创建流程,我们将只为应用准备一套控制器,这样我们就不必考虑如何在不同控制器之间进行信息传递了:

app.controller('SearchController',functionSearchController($scope){

})

第四步:基础服务

我们需要对自己的GitHub服务进行定义:

app.factory('GitHub',functionGitHub($http){

return{

}

})

我们将使用app.factory()方法,这样就能保证返回对象附带几个以后将会用到的方法。我们将使用$http服务从GitHub的API中获取数据。

第五步:搜索库

我们服务中的第一项方法负责利用GitHub API对库进行搜索。使用服务非常简单(这项函数能够进入由制造函数返回的对象):

searchRepos:functionsearchRepos(query,callback){

$http.get('https://api.github.com/search/repositories',{params:{q:query}})

.success(function(data){

callback(null,data)

})

.error(function(e){

callback(e)

})

}

$http.get()方法是执行GET请求的一种捷径。第一条参数是我们希望访问的URL。第二条参数则代表一个具备选项的对象。这里我们只需要params对象——它是一个查询参数散列,将被添加到该请求当中(其中q参数属于搜索字符串,大家可以点击此处了解更多相关信息)。

$http.get()会返回一项承诺。我们可以将监听器附加在success()与error()上,并且据此调用回调函数。

第六步:搜索栏

为了使用我们在之前几步中定义完成的函数,我们需要在自己的HTML当中添加搜索栏。

一、angularjs是一个javascript框架。通过script脚本引入,他是一个用Javascript编写的库。angularjs通过指令扩展了HTML,通过表达式绑定数据到HTML中。AngularJS主要考虑的是构建CRUD(增删改查)应用。

优点:

1. 模板功能强大丰富,并且是声明式的,自带了丰富的Angular指令;

2. 是一个比较完善的前端MVC框架,包含模板,数据双向绑定,路由,模块化,服务,过滤器,依赖注入等所有功能;

3. 自定义Directive(指令),比jQuery插件还灵活,但是需要深入了解Directive的一些特性,简单的封装容易,复杂一点官方没有提供详细的介绍文档,可以通过阅读源代码来找到某些我们需要的东西,如:在directive使用 $parse;

4. ng模块化比较大胆的引入了Java的一些东西(依赖注入),能够很容易的写出可复用的代码,对于敏捷开发的团队来说非常有帮助。

缺点:

1. 验证功能错误信息显示比较薄弱,需要写很多模板标签,没有jQuery Validate方便,所以可以自己封装了验证的错误信息提示;

2. ngView只能有一个,不能嵌套多个视图,虽然有angular-ui/ui-router · GitHub 解决,但是貌似ui-router 对于URL的控制不是很灵活,必须是嵌套式的;

3. 对于特别复杂的应用场景,貌似性能有点问题,特别是在Windows下使用chrome浏览器,不知道是内存泄漏了还是什么其他问题,没有找到好的解决方案,奇怪的是在IE10下反而很快;

4. 这次从1.0.X升级到1.2.X,貌似有比较大的调整,没有完美兼容低版本,升级之后可能会导致一个兼容性的BUG,具体详细信息参考官方文档AngularJS ,对应的中文版本:Angular 1.0到1.2 迁移指南

5. ng提倡在控制器里面不要有 *** 作DOM的代码,对于一些jQuery 插件的使用,如果想不破坏代码的整洁性,需要写一些directive去封装插件,但是现在有很多插件的版本已经支持Angular了,如:jQuery File Upload Demo

6. Angular 太笨重了,没有让用户选择一个轻量级的版本,当然1.2.X后,Angular也在做一些更改,比如把route,animate等模块独立出去,让用户自己去选择。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10070727.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存