Ultimate Ember.js for Web App Development: Leverage Convention Over Configuration Paradigm to Develop, Build, and Deploy Complex Applications Using Ember.js 9788197081927

Aswin K Murugesh, "Ultimate Ember.js for Web App Development: Leverage Convention Over Configuration Paradigm to De

107 32 2MB

English Pages 296 Year 2024

Report DMCA / Copyright

DOWNLOAD EPUB FILE

Table of contents :
Cover Page
Title Page
Copyright Page
Dedication Page
About the Author
About the Technical Reviewer
Acknowledgements
Preface
Errata
Table of Contents
1. Introduction to Ember.js
Introduction
Structure
An Overview of Web Development
Websites versus Web Applications
Defining Web Development
Frontend/Client Side
Backend/Server Side
JavaScript
Document Object Model (DOM)
Key Features of DOM
Select element by Id
Select elements by Class Name
Select Elements by Tag Name
Manipulating the DOM
Event Handling
JQuery
Frontend Applications
Client-Side Rendering /Single-Page Application
Advantages of SPA
Disadvantages of SPA
Server-Side Rendering
Advantages of SSR
Disadvantages of SSR
Static Site Generation
Advantages of SSG
Disadvantages of SSG
Popular Frontend Frameworks
React
Next.js
Angular
Vue.js
Backbone.js
Ember.js
History
Popularity
Key Features
Convention over Configuration
Component-Service Framework
Two-way data binding
Anatomy of an Ember.js App
Router
Route Handler
Models
Templates
Components
Controllers
Services
Overall Architecture
Tests
Addons
Conclusion
Points to Remember
Multiple Choice Questions
Answers
Questions
Key Terms
2. Ember CLI and Local Setup
Introduction
Structure
Ember CLI
Installation
Functionalities
Ember new
Ember addon
Ember init
Ember install
Ember generate
Ember destroy
Ember serve
Ember test
Ember build
Ember asset-sizes
Short Commands
Ember Folder Structure
README.md
app
config
ember-cli-build.js
Source maps
package.json
public
testem.js
tests
yarn.lock
node_modules
.ember-cli
Assets and Styling
CSS Preprocessors
SCSS/SASS
Conclusion
Points to Remember
Multiple Choice Questions
Answers
Questions
Key Terms
3. Ember.js Routing
Introduction
Structure
Introduction to Routing
Setting up Ember routes
Linking between routes
Nested routes
Dynamic segments
Route model
Route hooks
activate
deactivate
beforeModel
afterModel
setupController
willTransition
didTransition
resetController
redirect
Asynchronous routing
Loading and error substates
Loading substate
Loading event
Error substate
Error event
Controllers
Generating a controller
Query parameters
Routing with query parameters
LinkTo
transitionTo
Conclusion
Points to Remember
Multiple Choice Questions
Keys
Questions
Key Terms
4. Ember.js Components and Templates
Introduction
Structure
Introduction to Components
Generating a Component
Component Arguments
HTML Attributes
Templates
Comments
Insert HTML directly
{{outlet}}
{{yield}}
Conditional Statements
if
else
else if
unless
Inline if
Loops
index
Empty lists
Iterating over objects
Helper Functions
Built-in Helpers
concat helper
array helper
hash helper
let helper
input and textarea helpers
Creating a custom helper
Local helpers
Global helpers
Nested Helpers
Named Arguments
ember-truth-helpers
Component State and Actions
Tracked Properties
Actions
Actions with Params
Computed values
Combining Actions with Arguments
Ember Bootstrap
Built-in Components
Buttons
Navigation
Form
Tooltip
Carousel
Conclusion
Points to Remember
Multiple Choice Questions
Answers
Questions
Key Terms
5. Ember Data and Services
Introduction
Structure
Introduction to Ember Data
Ember Models
Default Values
getter functions
Transforms
Setting up a backend API
Installation
Structure of Ember CLI Mirage
Creating Routes
Models and Database
Ways to make API requests from Ember
Advantages of Ember Data
Places to make API requests in Ember
Ember Store
Injecting the Store
Read and filter Records
Fetch all objects
Filter and fetch certain objects
Handling Metadata
Fetch a Specific Record
RSVP Hash
Create, update, and delete records
Create records
Persisting Data
Updating Records
Tracking Changes
Deleting Records
deleteRecord
unloadRecord
unloadAll
Handle Relationships in Models
belongsTo
hasMany
inverse
Adapters
Extending Adapters
Host and namespace
Model-URL mapping
Headers
URL Conventions
Serializers
serialize
normalizeResponse
Identifier
Attribute Name Mapping
Ember Services
Generating a service
Configuring the Service
Conclusion
Points to Remember
Multiple Choice Questions
Answers
Questions
Key Terms
6. Configuring your Ember.js Application
Introduction
Structure
Configuring your App
Build Environments
App Secrets
Configuring Ember-CLI
Prototype Extensions
Advantages of Immutability
Disadvantages of Immutability
Making an Array immutable
Disabling Prototype Extensions
Alternatives to Prototype Extensions
Handling Deprecations
Filtering Deprecations
Deprecation Workflow
URL Types
Embedded Applications
Root Element
Root URL
Feature Flags
Life-cycle of an Ember feature
Enabling features in runtime
Optional Features
Build Targets
Robots.txt
Configuring robots.txt for each environment
Conclusion
Points to Remember
Multiple Choice Questions
Answers
Questions
Key Terms
7. Testing Ember.js Applications
Introduction
Structure
Introduction to Testing
Advantages of Testing
Different Ways of Testing
Manual Testing
Automated Testing
Manual Testing
Black Box Testing
White Box Testing
Gray Box Testing
Testing Tools in Ember
QUnit
Running Tests in Ember
Tests interface
Creating Tests in Ember
Filtering Tests
module
filter
Test Selectors
Debug your tests
pauseTest
Levels of Testing
Unit Tests
Rendering Tests
Application Tests
Code Coverage
Bug Fixing with Existing Tests
tests/unit/serializers/client-test.js
tests/integration/helper/get-display-name-test
tests/integration/component/clients-table/row-test.js
Unit Tests
Tracked Properties
Object Methods
Skip Tests
Stubbing
Stubbing Functions
Stubbing Objects
Stubbing Services
Testing Components
Testing DOM attributes
Testing User Interactions
Testing Actions
Testing Controllers
Testing Helpers
Testing Routes
Testing Models
Default Values
Model Functions
Relationships
Application Testing
Setting up Mirage
Testing Redirections
Updated Code Coverage
Conclusion
Points to Remember
Multiple Choice Questions
Answers
Questions
Key Terms
8. Ember Inspector
Introduction
Structure
Introduction to Ember Inspector
Installation
Google Chrome
Display Ember Favicon
Firefox
Bookmarklet Application
Mobile Devices
Version Info
App Config
Object Inspector
Sending Objects to Console
Console to Inspector
Navigating through Objects
Component Tree
View Component
Search Components
Locate the Component of an Element
Inspecting Routes
Search Bar
Current Route Only
Hide Substates
Inspecting Data
Filters
Inspect Store
Performance Monitoring
Debug Promises
Trace Promises
Handling Deprecations
Troubleshooting
Ember Application Not Detected
Promises not detected/Missing
Conclusion
Points to Remember
Multiple Choice Questions
Answers
Questions
9. Build and Deployment
Introduction
Structure
Building the Application
ember-cli-deploy
Deploying to AWS
Creating a Bucket
Enabling Static Website Hosting
Enabling Public Access
Create Programmatic User
ember-cli-deploy-s3
Deploy to GCP
Creating a Bucket
Enable Public Access
Enable Static Website Hosting
Create Programmatic User
ember-cli-deploy-gcloud-storage
Deploy to Azure
ember-cli-azure-deploy
Setup GitHub Repository
Create Static Web App
Adding Environment Variables to GitHub
Conclusion
Points to Remember
Multiple Choice Questions
Answers
Questions
Key Terms
10. Conclusion
Introduction
Structure
Ember.js
Convention over Configuration
Application Architecture
Ember-CLI
Developing your Ember Application
Testing your Ember Application
Code Coverage
Deploying your Ember Application
Build Process
Deployment
Maintaining your Ember Application
Handling Deprecations
Upgrading packages and Ember
Writing and Deploying an addon
Generating an addon
Adding Content
Linking the addon to our existing project
Pushing to Ember Observer
Best Practices in Ember.js
Contributing to Ember.js
Conclusion
Index

Ultimate Ember.js for Web App Development: Leverage Convention Over Configuration Paradigm to Develop, Build, and Deploy Complex Applications Using Ember.js
 9788197081927

  • 0 0 0
  • Like this paper and download? You can publish your own PDF file online for free in a few minutes! Sign Up
Recommend Papers