在进行 AngularJS 应用的开发时,经常需要显示图片,而 img 有时候并不能成功的获取到 srcng-src 指定的图片,这时候可能需要通过其它办法来指定一个备用图片,可以想到的办法有:

  • ng-src 的属性中,指定完普通的图片地址后,使用 || 追加备用图片的地址,如

    1
    ng-src='{{"myImg.png" || "fallback.png"}}'
  • 使用 ng-showng-hide 控制两个 img,其中一个正常显示图片,另外一个显示力求用图片

开始我也这么做,所以找了一下,发现了一个 AngularJS 指令,angular-fallback-image 不过这个指令并不完善,必须指定指令图片才行,我想要的是,就算没有指定图片,也可以显示一个占位性质的图片,于是我做了修改,发了 Pull Request ,不过这位乌拉圭的小哥 似乎有段时间没处理 Github 上的东西了。

阅读全文 »

我所经历的大部分项目,并不是纯粹的前端项目,相关的前端文件,都是使用 Express 来处理,除了 Jade 文件之外的,全部放在 Express 静态文件目录 public 中,Bower 也配置为将依赖包直接安装到 public/lib 目录,然后直接使用原路径在 HTML 中引用对应的 JavaScript / CSS 文件,经常是一个页面加载几十个静态资源。

上周在做一个 App 项目的商户端,对应的 API 已经完成,只是用 AngularJS 来实现一个前端 Web 页面,其中的 HTML 使用了 Jade 来完成。由于是一个完全的前端项目,终于决定尝试用 Gulp 来进行构建。整体的需求如下:

  • 使用 Bower 管理前端依赖
  • 需要将 Jade 文件编码成 HTML,并按照 Angular New Router 中的 Components 来组织目录结构
  • 将 CSS / JavaScript 文件组装为单个文件
  • 图片和字体等静态资源存放到对应目录
  • 使用 Gulp 创建一个调试用的服务器,并能够修改文件后自动重载浏览器页面
阅读全文 »

在上一篇Node.js ORM 数据操作中间件 Waterline 中,我们介绍了 Waterline 的功能与特点,这篇文章中我们将用一个实例 waterline-sample (GithubCoding.NET),来看看在 Express 项目中如何使用 Waterline。

要在项目中使用 Waterline ,无非是解决如何配置,在什么时机初始化,怎样组织所有的数据集合,以及在控制器中怎么调用 Waterline 中的数据集合这几个问题。

阅读全文 »

这两天在看 Sails.js 的时候,偶然看到了它使用的是 Waterline 来实现数据库的操作,发现它和 Sails.js 为同一团队所开发。翻了一下文档,感觉在中小型项目中使用,的确可以提升开发效率。

Java 中的 Hibernate 框架的一个重要功能便是将数据库中的数据与 Java 中的对象进行映射,被称为 ORM (Object Relational Mapping)。Node.js 里常用的 Mongoose ,便是将 MongoDB 的文档,映射为 JavaScript 的对象,而 Waterline 则是一个支持多种数据库的 Mongoose ,使得可以用一样的代码来实现对多种数据库的操作,无论是关系数据库还是文档数据库,都可以直接使用对象的方法来进行增删改查操作。

阅读全文 »