Durandal快速入门

Durandal是一个轻量级的JavaScript框架,其目标是单页面应用(SPAs)的开发变得简单而优雅。它支持MVC、MVP和MVVM等模式,因此不论你采用哪种类型的前端架构,Durandal都能胜任。

Durandal以RequireJS为基础,加上一个轻量级的惯例层,带来了令人惊叹的生产效率,并且帮助你维持稳健的编码实践。配上开箱即用的富界面组件、模态对话框、事件/消息、组件、过渡效果、导航等等,使你可以轻松开发出任何你能想象的应用。

尽管Durandal才发布大约一年时间,但其社区正以飞快的速度成长。

因此,我们推出了一个Kickstarter来帮助我们在2014年完成一些神奇的事情,希望你能关注。但现在,我将向你展示如何开发一个简单的Durandal程序。

要开始使用Durandal,可以有多种方式,这取决于你的平台。因为Durandal是一个纯JavaScript库,独立于任何服务端平台,我们尝试用多种方式来打包,以满足各类Web开发人员。在本教程中,我们将直接使用HTML Starter Kit。你可以在官方网站上直接下载。

下载完HTML Starter Kit后,解压缩,你就可以直接在Firefox各版本中打开index.html页面,运行其示例程序了。或者你也可以将其部署到Web服务器中,浏览其index页面。

本栏目更多精彩内容:http://www.bianceng.cn/webkf/tools/

Starter Kit演示了一个基本的导航架构,包括导航、页面历史、数据绑定、模态对话框等等。当然,我们不只是看看而已,我们要从头开始写一个小程序。首先打开app文件夹,删除里面的所有内容,然后删除index.html。这样我们就有了一个空项目,并且预配置了所有必须的scripts和css。

*注:IE, ChromeSafari可能无法从文件系统中直接打开这类文件。如果你仍希望使用这些浏览器,可以将其部署到你喜欢的Web服务器中。

Index.html 我们开始编写index.html文件,内容如下:

<!DOCTYPE html>
<html>
  <head>
    <link rel="stylesheet" href="lib/bootstrap/css/bootstrap.css"    />
    <link rel="stylesheet" href="lib/font-awesome/css/font-awesome.css"    />
    <link rel="stylesheet" href="lib/durandal/css/durandal.css"    />
    <link rel="stylesheet" href="css/starterkit.css"    />
  </head>
  <body>
    <center id="applicationHost"></center>
    <script src="lib/require/require.js" data-main="app/main"></script>
  </body>
</html>

我们看到,文件中只有一些css样式文件,一个id为applicationHost的简单的center, ,一个script标签。我们加上了Bootstrap和FontAwesome,使界面看起来美观一些,但它们并不是Durandal所必须的。我们要关注的关键代码是script标签。

Durandal采用RequireJS作为其核心构件之一,鼓励模块化的编程方式。在Durandal应用中,所有的JS代码都写在模块中。上文index.html中的script标签就是用于加载RequireJS来完成框架的模块策略。当模块加载器完成初始化后,它通过data-main属性的值来启动应用。就像C语言中的main函数一样,data-main属性指向的是主模块,是整个应用的入口。让我们进行下一步,创建这个模块。首先创建一个名为main.js的文件,把它放到app文件夹下。其代码如下:

main.js
requirejs.config({
  paths: {
    'text': '../lib/require/text',
    'durandal':'../lib/durandal/js',
    'plugins' : '../lib/durandal/js/plugins',
    'transitions' : '../lib/durandal/js/transitions',
    'knockout': '../lib/knockout/knockout-2.3.0',
    'jquery': '../lib/jquery/jquery-1.9.1'
    }
});
define(function (require) {
   var system = require('durandal/system'),
       app = require('durandal/app');
   system.debug(true);
   app.title = 'Durandal Starter Kit';
   app.configurePlugins({
     router:true,
     dialog: true
   });
   app.start().then(function() {
     app.setRoot('shell');
   });
});

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索app
, 文件
, 应用
, requirejs
, knockout
, 模块
, index
, knockout js
, app js
, 一个
, FontAwesome
, jquery1.9.1
, JQuery快速入门
RequireJS入门
durandal、durandal 中文手册、durandaljs 中文网、durandaljs、durandal 教程,以便于您获取更多的相关知识。

时间: 2025-01-26 20:50:39

Durandal快速入门的相关文章

《R语言游戏数据分析与挖掘》一2.1 开发环境准备和快速入门

2.1 开发环境准备和快速入门 2.1.1 R语言简介 R语言的前身是S语言,S语言是由AT &T Bell实验室的Rick Becker.John Chambers和Allan Wilks开发的一种用来进行数据探索.统计分析.作图的解释型语言.最初S语言的实现版本主要是S-PLUS.S-PLUS是一个商业软件,它基于S语言,并由MathSoft公司的统计科学部进一步完善.而R语言最初由来自新西兰大学的Ross Ihaka和Robert Gentleman开发(由于他们的名字都以R开头,所以该软

数据库快速入门教程--视频

数据库快速入门教程--视频 下载地址:http://v.51work6.com/courseInfoRedirect.do?action=courseInfo&courseId=240579 本课程是这个课程体系的核心之一,为软件开发人员所需数据库知识的学习教材,而不是培训一个DBA(数据库管理员),更具体的说是为Web开发程序员所需数据库知识的学习教材.基于培养程序员的目标,本课程对数据库和SQL语句的相关知识进行了深刻地阐明和分析,学习的重点是标准SQL语句的学习的掌握.常用数据库MySQL

json快速入门学习教程

JSON快速入门 计算机语言中三种数据 1.标量 一个单独的字符串或者数字 比如"成都":7  2.序列 若干相关的数据按一定的顺序并列在一起(数组或列表) 比如"北京,成都":7 8 9 3.映射 名/值对 即数据名称与相对应的值 又称散列(hash)或字典 字典等等 比如 "四川省会:成都" JSON(JavaScript Object Notation)是一种轻量级的数据交换格式 JSON的四个基本规则 (1)并列的数据之刘用逗号(&quo

AJAX快速入门之HTTP协议基础

ajax|快速入门 要很好地领会Ajax技术的关键是了解超文本传输协议(HTTP),该协议用来传输网页.图像以及因特网上在浏览器与服务器间传输的其他类型文件.只要你在浏览器上输入一个URL,最前面的http://就表示使用HTTP来访问指定位置的信息. (大部分浏览器还支持其他一些不同的协议,其中FTP就是一个典型例子.) 注意:本文中只涉及HTTP协议,这是Ajax开发人员关心的方面,它可作为HTTP的参考手册或指南. HTTP由两部分组成:请求和响应.当你在Web浏览器中输入一个URL时,浏

HTML 4.0 语言快速入门参考教程

参考|教程|快速入门 所有的万维网文件都是由超文本标志语言HTML所创建的.在这种语言中,可以使用各种标记对文件进行处理.这些标记决定了文件内容的外观.结构以及交互性等方面,他们的共同之处就是都使用"<>",例如段落标记<p>,图片标记<imp>等. 在浏览器中,是看不到任何HTML标记的,但是在浏览器中所看到的网页效果却都是由这些标记生成的. 在大多数情况下,在创建站点时并不需要对HTML标记进行掌握,因为在FrontPage 2000这样的软件中

Ajax.Net快速入门

ajax|快速入门 现在的项目准备用ajax,用ajax.net实现,而不是atlas,所以先看下ajax.net,Ajax.Net现在的最新版本是AjaxPro5.11.4.2,下载地址是:www.schwarz-interactive.de 首先我们新建个项目,名字是AjaxPro,我用的是vs2005beta2版本. 右击站点名字点add reference添加对我们刚刚下载来的那个叫AjaxPro.2.dll的引用,如果你用的是vs2003,则添加对AjaxPro.dll的引用,然后我们

XML轻松学习手册(1)XML快速入门

xml|快速入门 前言 XML越来越热,关于XML的基础教程网络上也随处可见.可是一大堆的概念和术语往往让人望而生畏,很多朋友问我:XML到底有什么用,我们是否需要学习它?我想就我个人学习过程的心得和经验,写一篇比较全面的介绍文章.首先有两点是需要肯定的: 第一:XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解,等待只会让你失去机会: 第二:新知识肯定会有很多新概念,尝试理解和接受,您才可能提高.不要害怕和逃避,毕竟我们还年轻. 提纲 本文共分五大部分.分别是XM

博阅RSS阅读器快速入门

rss|快速入门 博阅RSS阅读器是为信息时代尽快获取所需信息而打造的一款简单易用的RSS阅读器.通过它您可以管理.获取.阅读 格式的信息.管理信息就是您可以根据自己的需要来确定和管理信息来源,获取信息就是您可以根据自己的需要从定制的信息源中来更新获取信息,阅读信息是指您可以方便的在阅读器中查看信息列表.摘要和详细内容.总之,您可以通过博阅RSS阅读器及时的获得你所要的各种信息. 软件资料 软件名称:博阅RSS阅读器 软件版本:V1.0 软件大小:20.26 MB 软件性质:免费软件 支持平台:

ASP初学者怎样快速入门

初学|快速入门|初学|快速入门 大家好!今天我想对初学ASP的人说一说,怎样才能快速入门.第一,要持之以恒,坚持不懈,"水滴石穿".第二,要不怕苦,今天遇到难解决的问题就回避,那么问题会越来越多.第三,要一边看书一边编程,二者缺一不可.好了,今天先说一些思想问题,为以后做一下准备,在以后我会进一步和大家切磋关于ASP的话题.