embed resources data

This commit is contained in:
Zhicheng Wang 2016-06-16 23:24:23 +08:00
parent c889525461
commit eb35497932
3 changed files with 384 additions and 21 deletions

View File

@ -1,19 +0,0 @@
<p class="text-body">Would you like to be listed in this page? Fill out this <a href="https://docs.google.com/a/rangle.io/forms/d/1qzWaDpTgTPe4iPDRF_VCT9aHXKimUocwlFnVJUdKabY/viewform?c=0&w=1">form</a>.</p>
<div class="js-resources-ctrl resources" ng-controller="ResourcesCtrl as ctrl">
<div class="section" ng-repeat="(category, categoryContent) in ctrl.fbObject">
<div>
<h1 class="capitalize">{{category}}</h1>
<div ng-repeat="section in categoryContent">
<div ng-repeat="(subsectionName, subsectionObj) in section">
<div>
<h2>{{ subsectionObj.title }}</h2>
<ul ng-repeat="resource in subsectionObj.resources">
<li ng-if="resource.rev"><a target="_blank" href="{{resource.url}}">{{ resource.title }}</a></li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>

View File

@ -0,0 +1,14 @@
p.text-body
a(href='https://docs.google.com/a/rangle.io/forms/d/1qzWaDpTgTPe4iPDRF_VCT9aHXKimUocwlFnVJUdKabY/viewform?c=0&w=1') 想被列到这里吗?请填写这个表单!
.js-resources-ctrl.resources(ng-controller='ResourcesCtrl as ctrl')
.section(ng-repeat='(category, categoryContent) in ctrl.fbObject')
div
h1.capitalize {{category}}
div(ng-repeat='section in categoryContent')
div(ng-repeat='(subsectionName, subsectionObj) in section')
div
h2 {{ subsectionObj.title }}
ul(ng-repeat='resource in subsectionObj.resources')
li(ng-if='resource.rev')
a(target='_blank', href='{{resource.url}}') {{ resource.title }}

View File

@ -8,6 +8,374 @@ angularIO.controller('ResourcesCtrl', ['$firebaseArray', '$firebaseObject', func
var categoryRef = new Firebase("https://angularresources.firebaseio.com/");
var vm = this;
vm.fbObject = $firebaseObject(categoryRef);
vm.fbObject = {
"community": [{
"groups": {
"icon": "",
"resources": [{
"rev": true,
"title": "Angular Beers",
"url": "http://www.meetup.com/AngularJS-Beers/"
}, {"rev": true, "title": "Angular Camp", "url": "http://angularcamp.org/"}],
"title": "Groups"
},
"podcasts": {
"icon": "",
"resources": [{
"desc": "Weekly video podcast hosted by Jeff Whelpley with all the latest and greatest happenings in the wild world of Angular.",
"id": 0,
"logo": "",
"rev": true,
"title": "AngularAir",
"url": "https://angularair.com/"
}, {
"desc": "",
"id": 1,
"logo": "",
"rev": true,
"title": "Javascript Air",
"url": "https://javascriptair.com/"
}, {
"desc": "",
"id": 2,
"logo": "",
"rev": true,
"title": "Adventures in Angular",
"url": "https://devchat.tv/adventures-in-angular"
}],
"title": "Podcasts"
}
}],
"development": [{
"tooling": {
"icon": "",
"resources": [{
"desc": "A Google Chrome Dev Tools extension for debugging Angular 2 applications.",
"id": 0,
"logo": "https://augury.angular.io/images/augury-logo.svg",
"rev": true,
"title": "Augury",
"url": "http://augury.angular.io/"
}, {
"desc": "Server-side Rendering for Angular 2 apps.",
"id": 1,
"logo": "https://cloud.githubusercontent.com/assets/1016365/10639063/138338bc-7806-11e5-8057-d34c75f3cafc.png",
"rev": true,
"title": "Angular Universal",
"url": "https://github.com/angular/universal"
}, {
"desc": "Lightweight development only node server",
"id": 2,
"logo": "",
"rev": true,
"title": "Lite-server",
"url": "https://github.com/johnpapa/lite-server"
}, {
"desc": "A set of tslint rules for static code analysis of Angular 2 TypeScript projects.",
"id": 3,
"logo": "",
"rev": true,
"title": "Codelyzer",
"url": "https://github.com/mgechev/codelyzer"
}, {
"desc": "This package provides facilities for developers building Angular 2 applications on ASP.NET.",
"id": 4,
"logo": "",
"rev": true,
"title": "Universal for ASP.NET",
"url": "https://github.com/aspnet/nodeservices"
}],
"title": "Tooling"
}
}, {
"ide": {
"icon": "",
"resources": [{
"desc": "VS Code is a Free, Lightweight Tool for Editing and Debugging Web Apps. Platforms: Linux, Windows",
"id": 0,
"logo": "",
"rev": true,
"title": "Visual Studio Code",
"url": "http://code.visualstudio.com/"
}, {
"desc": "Lightweight yet powerful IDE, perfectly equipped for complex client-side development and server-side development with Node.js",
"id": 1,
"logo": "",
"rev": true,
"title": "Webstorm",
"url": "https://www.jetbrains.com/webstorm/"
}, {
"desc": "Capable and Ergonomic Java * IDE",
"id": 2,
"logo": "",
"rev": true,
"title": "IntelliJ IDEA",
"url": "https://www.jetbrains.com/idea/"
}],
"title": "IDEs"
}
}, {
"data": {
"icon": "",
"resources": [{
"desc": "The official library for Firebase and Angular 2",
"id": 0,
"logo": "",
"rev": true,
"title": "Angular Fire",
"url": "https://github.com/angular/angularfire2"
}, {
"desc": "Use Angular 2 and Meteor to build full-stack JavaScript apps for Mobile and Desktop.",
"id": 1,
"logo": "http://www.angular-meteor.com/images/logo.png",
"rev": true,
"title": "Meteor",
"url": "http://www.angular-meteor.com/angular2"
}, {
"desc": "Apollo is a data stack for modern apps, built with GraphQL.",
"id": 2,
"logo": "http://docs.apollostack.com/logo/large.png",
"rev": true,
"title": "Apollo",
"url": "http://docs.apollostack.com/apollo-client/angular2.html"
}],
"title": "Data Libraries"
}
}, {
"ui": {
"icon": "",
"resources": [{
"desc": "Material Design components for Angular 2",
"id": 0,
"logo": "",
"rev": true,
"title": "Angular Material 2",
"url": "https://github.com/angular/material2"
}, {
"desc": "PrimeNG is a collection of rich UI components for Angular 2",
"id": 1,
"logo": "http://www.primefaces.org/primeng/showcase/resources/images/primeng.svg",
"rev": true,
"title": "Prime Faces",
"url": "http://www.primefaces.org/primeng/"
}, {
"desc": "",
"id": 2,
"logo": "",
"rev": true,
"title": "Kendo UI",
"url": "http://www.telerik.com/blogs/what-to-expect-in-2016-for-kendo-ui-with-angular-2-and-more"
}, {
"desc": "Native Angular 2 components & directives for Lightning Design System",
"id": 3,
"logo": "http://ng-lightning.github.io/ng-lightning/img/shield.svg",
"rev": true,
"title": "ng-lightning",
"url": "http://ng-lightning.github.io/ng-lightning/"
}, {
"desc": "Wijmo 5, a collection of true JavaScript controls that doesn't make compromises to support legacy browsers.",
"id": 4,
"logo": "http://wijmocdn.azureedge.net/wijmositeblob/wijmo-theme/logos/wijmo-55.png",
"rev": true,
"title": "Wijmo",
"url": "http://wijmo.com/products/wijmo-5/"
}, {
"desc": "Material design inspired UI components for building great web apps. For mobile and desktop.",
"id": 5,
"logo": "",
"rev": true,
"title": "Vaadin",
"url": "https://vaadin.com/elements"
}, {
"desc": "Native Angular2 directives for Bootstrap",
"id": 6,
"logo": "",
"rev": true,
"title": "ng2-bootstrap",
"url": "http://valor-software.com/ng2-bootstrap/"
}],
"title": "UI Components"
}
}, {
"platform": {
"icon": "",
"resources": [{
"desc": "Integrating NativeScript with Angular 2.",
"id": 0,
"logo": "",
"rev": true,
"title": "NativeScript",
"url": "https://github.com/NativeScript/nativescript-angular"
}, {
"desc": "Angular 2 and React Native to build applications for Android and iOS",
"id": 1,
"logo": "",
"rev": true,
"title": "ReactNative",
"url": "http://angular.github.io/react-native-renderer/"
}, {
"desc": "Ionic offers a library of mobile-optimized HTML, CSS and JS components and tools for building highly interactive native and progressive web apps.",
"id": 2,
"logo": "http://ionicframework.com/img/ionic-logo-white.svg",
"rev": true,
"title": "Ionic",
"url": "http://ionicframework.com/docs/v2/"
}, {
"desc": "Electron Platform for Angular 2.",
"id": 3,
"logo": "",
"rev": true,
"title": "Electron",
"url": "http://github.com/angular/angular-electron"
}, {
"desc": "An Universal Windows App (uwp) powered by Angular 2",
"id": 4,
"logo": "",
"rev": true,
"title": "Windows (UWP)",
"url": "http://github.com/preboot/angular2-universal-windows-app"
}],
"title": "Cross-Platform Development"
}
}],
"education": [{
"online": {
"icon": "",
"resources": [{
"desc": "",
"id": 0,
"logo": "",
"rev": true,
"title": "Rangle.io",
"url": "https://rangle.io/services/javascript-training/training-angular1-angular2-with-ngupgrade/"
}, {
"desc": "",
"id": 1,
"logo": "",
"rev": true,
"title": "Pluralsight",
"url": "https://www.pluralsight.com/search?q=angular+2&categories=all"
}, {
"desc": "",
"id": 3,
"logo": "",
"rev": true,
"title": "Udemy",
"url": "https://www.udemy.com/courses/search/?ref=home&src=ukw&q=angular+2&lang=en"
}, {
"desc": "",
"id": 4,
"logo": "",
"rev": true,
"title": "Egghead.io",
"url": "https://egghead.io/technologies/angular2"
}, {
"desc": "",
"id": 5,
"logo": "",
"rev": true,
"title": "Frontend Masters",
"url": "https://frontendmasters.com/courses/angular-2/"
}],
"title": "Online Training"
}
}, {
"workshops": {
"icon": "",
"resources": [{
"desc": "",
"id": 0,
"logo": "",
"rev": true,
"title": "Rangle.io",
"url": "http://rangle.io/services/javascript-training/angular2-training/"
}, {
"desc": "",
"id": 1,
"logo": "",
"rev": true,
"title": "Angular Boot Camp",
"url": "https://angularbootcamp.com"
}, {
"desc": "",
"id": 2,
"logo": "",
"rev": true,
"title": "Thoughtram",
"url": "http://thoughtram.io/"
}, {
"desc": "",
"id": 3,
"logo": "",
"rev": true,
"title": "Frontend Masters",
"url": "https://frontendmasters.com/workshops/angular-2/"
}],
"title": "Workshops & Onsite Training"
}
}, {
"books": {
"icon": "",
"resources": [{
"desc": "",
"id": 0,
"logo": "",
"rev": true,
"title": "Packt Publishing",
"url": "https://www.packtpub.com/all/?search=angular%202#"
}, {
"desc": "",
"id": 1,
"logo": "",
"rev": true,
"title": "Manning Publications",
"url": "https://www.manning.com/search?q=angular"
}, {
"desc": "",
"id": 2,
"logo": "",
"rev": true,
"title": "O'Reilly Media",
"url": "https://ssearch.oreilly.com/?q=angular+2&x=0&y=0"
}, {
"desc": "",
"id": 3,
"logo": "",
"rev": true,
"title": "Rangle.io ngCourse 2",
"url": "http://ngcourse.rangle.io/"
}, {
"desc": "",
"id": 4,
"logo": "",
"rev": true,
"title": "ng-book 2",
"url": "https://www.ng-book.com/2/"
}, {
"desc": "",
"id": 5,
"logo": "",
"rev": true,
"title": "Angular 2 Book",
"url": "https://leanpub.com/angular2-book"
}, {
"desc": "",
"id": 6,
"logo": "",
"rev": true,
"title": "Becoming a Ninja with Angular 2",
"url": "https://books.ninja-squad.com/angular2"
}, {
"desc": "",
"id": 7,
"logo": "",
"rev": true,
"title": "Practical Angular 2",
"url": "https://leanpub.com/practical-angular-2"
}],
"title": "Books"
}
}]
};
}]);