迈向angularjs2系列(6):路由机制
目录
1.angular-seed的路由
2.路由机制的探索
3.懒加载
一:angular-seed的路由
step1:安装种子项目

$ git clone --depth 1 https://github.com/AngularClass/angular2-seed.git developer-hub
//git cmd进入到项目目录后运行此命令,我的项目的名称为developer-hub
$ cd developer-hub //webstorm命令行进入项目目录
$ npm install //json文件修改好之后再运行install命令
$ npm start
"compilerOptions": {
"lib": ["es6", "dom"]
}

● dist放最后生产用的文件
● node-modules放node模块
● src 源代码
● .gitignore文件是git用于配置不需要加入版本管理的文件,比如最后两行是
.awcache
.DS_Store
●LICENSE,我的是
Apache License
Version 2.0, January 2004
●package.json
{
"name": "angular2-seed",
"version": "0.0.0",
"description": "A simple Angular 2 Seed featuring Angular 2 and Webpack 2",
"author": "PatrickJS <github@gdi2290.com>",//作者
"main": "index.js",
//主入口
"files": [
"dist",
"src"
],
"scripts": {//npm脚本
"test": "echo \"Error: no test specified\" && exit 1",
"start": "npm run server:dev",
"start:hmr": "npm run server:dev -- --env.HMR",
"server:dev": "webpack-dev-server --env.ENV development",
"debug:start": "node-nightly --inspect --debug-brk node_modules/webpack-dev-server/bin/webpack-dev-server.js --env.ENV development",
"debug:build": "node-nightly --inspect --debug-brk node_modules/webpack/bin/webpack.js --env.ENV development",
"predll": "rimraf dist/dll/*.*",
"dll": "webpack --config webpack.dll.ts --env.ENV development",
"prebuild": "rimraf dist/*.*",
"build": "webpack --env.ENV development",
"build:hmr": "npm run build -- --env.HMR"
},
"dependencies": {
//项目
"@angular/common": "~2.0.1",
"@angular/compiler": "~2.0.1",
"@angular/compiler-cli": "~0.6.3",
"@angular/core": "~2.0.1",
"@angular/http": "~2.0.1",
"@angular/forms": "~2.0.1",
"@angular/router": "~3.0.1",
"@angular/platform-browser": "~2.0.1",
"@angular/platform-browser-dynamic": "~2.0.1",
"@angular/platform-server": "~2.0.1",
"@angularclass/conventions-loader": "^1.0.12",
"@angularclass/form-validators": "^1.0.11",
"@angularclass/resolve-angular-routes": "^1.0.8",
"@angularclass/hmr-loader": "~3.0.1",
"@angularclass/hmr": "~1.2.0",
"core-js": "^2.4.1",
"rxjs": "5.0.0-beta.12",
"zone.js": "~0.6.25"
},
"devDependencies": {
//dev项目依赖
"@types/core-js": "^0.9.28",
"@types/node": "^4.0.30",
"assets-webpack-plugin": "^3.4.0",
"awesome-typescript-loader": "^2.2.1",
"cross-spawn": "^4.0.0",
"es6-promise": "^3.1.2",
"es6-shim": "^0.35.0",
"ie-shim": "^0.1.0",
"ignore-loader": "^0.1.1",
"json-loader": "^0.5.4",
"raw-loader": "^0.5.1",
"rimraf": "^2.5.4",
"string-replace-loader": "github:gdi2290/string-replace-loader",
"to-string-loader": "^1.1.4",
"ts-helpers": "github:gdi2290/ts-helpers",
"ts-loader": "^0.8.2",
"ts-node": "^1.2.2",
"typescript": "2.0.2",
"webpack": "~2.1.0-beta.25",
"webpack-dev-middleware": "^1.6.1",
"webpack-dev-server": "^2.1.0-beta.8"
},
"license": "Apache-2.0",
//许可证
"bugs": {
"url": "https://github.com/gdi2290/angular2-webpack2-starter/issues"
},
"homepage": "https://github.com/gdi2290/angular2-webpack2-starter#readme",
//主页
"repository": {
//仓库
"type": "git",
"url": "git+https://github.com/gdi2290/angular2-webpack2-starter.git"
}
}
说明1:main选项是主入口模块的ID
说明2:files选项是项目包含的两个目录。
说明3:scripts选项是npm script(npm脚本)
scripts也是对象,它的属性包含了很多,比如 "start": "npm run server:dev", 的意思是start命令对应的脚本是npm run server:dev。
说明4:dependencies选项是项目依赖。
比如@angular之类的依赖可以在node_modules找到对应的目录

说明5:devDependencies是项目开发依赖,跟开发环境、调试打包有关咯。
第二看src源代码目录了。

●app目录
—about组件
—home组件
app.html文件
●main.browser.ts文件负责使用根模块(NgModule)去启动应用。
●index.html是src目录下默认打开的文件。里面做了app组件的使用和一些文件的引入。可以测试一下,先把原文内容注释掉,等测试完毕之后再放开。
index.html我的内容:
<!DOCTYPE html>
<html迈向angularjs2系列(6):路由机制的更多相关文章
- C#进阶系列——WebApi 路由机制剖析:你准备好了吗?
前言:从MVC到WebApi,路由机制一直是伴随着这些技术的一个重要组成部分. 它可以很简单:如果你仅仅只需要会用一些简单的路由,如/Home/Index,那么你只需要配置一个默认路由就能简单搞定: ...
- C#进阶系列——WebApi 路由机制剖析:你准备好了吗? 转载https://www.cnblogs.com/landeanfen/p/5501490.html
阅读目录 一.MVC和WebApi路由机制比较 1.MVC里面的路由 2.WebApi里面的路由 二.WebApi路由基础 1.默认路由 2.自定义路由 3.路由原理 三.WebApi路由过程 1.根 ...
- 迈向angularjs2系列(4):脏值检测机制
目录 一: 概念简介 脏值检测,简单的说就是在MVC的构架中,视图会通过模型的change事件来更新自己. 脏值检测的核心代码是观察者模式的实现,其机制会执行digest循环,在特定UI组件的上下文执 ...
- 迈向angularjs2系列(1):typescript指南
typescript指南 前言 typescript是angularjs2推荐使用的脚本语言.它由微软2012年首次发布. 一. typescript和javascript的区别 1.从遵循的规 ...
- 迈向angularjs2系列(5):依赖注入
一: 为什么要依赖注入 1.构造器引入依赖 假设一个类Car类依赖于Engine(引擎)类.Transition(变速箱)类,可使用构造器来完成. //类似如下代码 class Engine{} cl ...
- Zigbee系列(路由机制)
参考文档: ug103-02-fundamentals-zigbee.pdf section4 zigbe routing concepts docs-05-3474-21-0csg-zigbee-s ...
- 迈向angularjs2系列(8):angular cli和angular2种子项目
文章目录 1.angular cli快速搭建项目 2.angular2-seed 3.手动配置 题外话:如何更好的阅读本篇文章 一: angular cli的安装 Angular-cli(命令行界面, ...
- 迈向angularjs2系列(7):表单
目录 一:校验表单的使用 1.搭建脚手架 2.校验表单的使用 3.select下拉列表的用法 一: 校验表单的使用 对于CRUD型的应用,表单是必备组件. 1.搭建脚手架 git clone http ...
- 迈向angularjs2系列(3):组件详解
一: 以组件开发一个to-do list应用 todo组件分为导入.接口定义.顶层组件.控制器.启动5个部分. app.ts: //导入 import {Component} from '@angul ...
随机推荐
- 采用HTML5之"data-"机制自由提供数据
周末总是过得很快,又到了跟代码亲密接触的日子,我在北京向各位问好,今天我分享一点关于前端的东西,HTML5之标签"data-*"自定义属性的值传递. 在过去学习JavaScript ...
- JAVA入门[22]—thymeleaf
一.thymeleaf官网 官网:https://www.thymeleaf.org/index.html doc:https://www.thymeleaf.org/documentation.ht ...
- python数据库学习--Mysql
摘要: Python使用mysql需要安装驱动,有两种1)mysqldb 2)umysql ,两者都是开源,具体区别不详,umysql没用过 一.mysqldb 安装MySQL驱动--http:// ...
- javascript中的闭包(Closure)的学习
闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现. 下面是我在网上通过学习阮一峰老师的笔记,感觉总结很不错,特记录于此. 一.变量的作用域 要理解 ...
- HDU5742 It's All In The Mind(思维题,水题)
Problem Description Professor Zhang has a number sequence a1,a2,...,an. However, the sequence is not ...
- 快慢指针实现不依赖计数器寻找中位数(linked list)
该方法在不借助计数器变量实现寻找中位数的功能.原理是:快指针的移动速度是慢指针移动速度的2倍,因此当快指针到达链表尾时,慢指针到达中点.程序还要考虑链表结点个数的奇偶数因素,当快指针移动x次后到达表尾 ...
- 设计模式(二) 策略模式Strategy
策略模式是对算法的包装,是把使用算法的责任和算法本身分割开来,委派给不同的对象管理,我个人的理解是,具有相同行为不同的行为模式,比如走路,有人速度3m/s,有人100m/s,把他们的具体行走和对象本身 ...
- git中常用的指令
1.初始化仓库 git init2.设置用户名与邮箱 git config --global user.name 'name' git config --global user.email 'emai ...
- 20. Valid Parentheses【leetcode】
20. Valid Parentheses Given a string containing just the characters '(', ')', '{', '}', '[' and ']', ...
- [Poi2010]Monotonicity 2 线段树
这道题考试的时候先打了个dfs暴力.又打了个O(n²)的动规.然后竟然心血来潮拍了一下..明明知道过不去的...然后水了50分(20个测试点这么多啊啊啊啊). 因为它已经提前给你如果长度为i时下一位的 ...