Angular 的问题与解决方案

1》ng-if 导致 ng-model 失效的问题

比如说下拉联动隐藏显示的时候,多个验证模块,需要使用到ng-if。可以使用 $parent 来解决这个问题 ng-model="$parent.userName" ;

如果存在 ng-if 的嵌套情况,$parent.$parent 逐级嵌套$parent就可以了,如下图所示。

2》$scope.$new(false) // false 和 true  可以改变是否共享一个作用域

日期赋值的问题:

业务代码:

3》如何在 Controller 层去使用 $filter  过滤器 :

//获取日期和时间

var date=$filter("date")($scope.getDate,"yyyy-MM-dd HH:mm");

//将时间转换成时间戳
    var dateIntValue = (+new Date(date))/1000;

 

4》使用拦截器($httpProvider interceptors) 来对(get、post)请求做过滤的统一操作,比方说使用场景如下:

用户授权模块,对http请求做统一的拦截,使用 AOP的方式动态在请求中注入 token的参数,对请求超时做处理

5: $provide.decorator 装饰器进行重写现有的指令等等

6:如何利用 ng-include 引入同一模板,使用不同的作用域

7: 多采用 Promise 的方式去维护组件,保持一样的组件风格,基本上Angular Meterial 全部的组件都采用了 Promise的方式来维护以及 angular-ui-bootstrap 也是

7:一个测试获取图片数据的网站:http://lorempixel.com/50/50/people/

时间: 2024-11-10 07:59:12

Angular 的问题与解决方案的相关文章

angular的post传参后台php无法接收

很多时候我们需要用ajax提交post数据,angularjs与jq类似,也有封装好的post. 但是jQuery的post明显比angularjs的要简单一些,人性化一些. 两者看起来没什么区别,用angularjs的$http提交的数据,在php服务器端却无法通过$_REQUEST/$_POST获取到. 这是因为两者的post对header的处理有所不同……jQuery会把作为JSON对象的myData序列化,而Angular不会. 解决方案: 修改Angular的$httpProvider

AngularJS中的$http.post与jQuery.post的区别

很多时候我们需要用ajax提交post数据,angularjs与jq类似,也有封装好的post. 但是jQuery的post明显比angularjs的要简单一些,人性化一些. AngularJS: ? 1 2 3 4 $http.post('do-submit.php',myData) .success(function(){     // some code }); jQuery: ? 1 2 3 $.post('do-submit.php', myData, function() {    

【 js 基础 】【 源码学习 】backbone 源码阅读(二)

最近看完了 backbone.js 的源码,这里对于源码的细节就不再赘述了,大家可以 star 我的源码阅读项目(https://github.com/JiayiLi/source-code-study)进行参考交流,有详细的源码注释,以及知识总结,同时 google 一下 backbone 源码,也有很多优秀的文章可以用来学习. 我这里主要记录一些偏设计方向的知识点.这篇文章主要讲 控制反转. 一.控制反转 上篇文章有说到控制反转,但只是简略的举了个例子,在这里我们详细说一下这个知识点,它其实

angular的post请求,SpringMVC后台接收不到参数值的解决方案

这是我后台SpringMVC控制器接收isform参数的方法,只是简单的打出它的值: @RequestMapping(method = RequestMethod.POST) @ResponseBody public Map<String, Object> save( @RequestParam(value = "isform", required = false) String isform) { System.out.println("isform value

angular 动态设置blob链接给 ng-href时遇到unsafe 解决方案

angular 默认情况下 的安全协议 是  https?|ftp|mailto| 当我们使用blob 对象去产生url时,需要设定blob为安全协议 var app = angular.module( 'myApp', [] ).config( [     '$compileProvider',     function( $compileProvider )     {            $compileProvider.aHrefSanitizationWhitelist(/^\s*(

angular 使用blob 产生 url动态给ng-href赋值时候 出现unsafe 解决方案

angular 默认情况下 的安全协议 是  https?|ftp|mailto| 当我们使用blob 对象去产生url时,需要设定blob为安全协议 var app = angular.module( 'myApp', [] ).config( [ '$compileProvider', function( $compileProvider ) { $compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|chrom

Angular页面加载闪现解决方案 ng-cloak

在做Angular项目时,经常会遇见在浏览器上闪烁表达式({{ express }} ),及模块(div)的闪烁,会闪现/闪烁隐藏的数据,之前用过vue.js,可以通过v-clock解决,同理Angular也可以通过ng-cloak来实现防止闪烁的方案. <div id="template1" ng-cloak>河马家</div> <div id="template2" ng-cloak> {{hema}}</div>

angular.js跨域post解决方案

跨域,前端开发中经常遇到的问题,AngularJS实现跨域方式类似于Ajax,使用CORS机制. 下面阐述一下AngularJS中使用$http实现跨域请求数据. AngularJS XMLHttpRequest:$http用于读取远程服务器的数据 $http.post(url, data, [config]).success(function(){ ... }); $http.get(url, [config]).success(function(){ ... }); $http.get(ur

angular controller js 压缩后报错解决方案

简单介绍下ng-annotate这个项目,这个项目正好提供了gulp的插件. gulp配置文件: var gulp = require('gulp'); var ngAnnotate = require('gulp-ng-annotate'); //这个 var gutil = require('gulp-util'); var bower = require('bower'); var uglify = require('gulp-uglify'); var concat = require(