Method | Side effects1 | State updates2 | Example uses |
---|---|---|---|
Mounting | |||
componentWillMount |
✓ | Constructor equivalent for createClass |
|
render |
Create and return element(s) | ||
componentDidMount |
✓ | ✓ | DOM manipulations, network requests, etc. |
Updating | |||
componentWillReceiveProps |
✓ | Update state based on changed props |
#!/bin/bash | |
#title :wildfly-install.sh | |
#description :The script to install Wildfly 10.x | |
#more :http://sukharevd.net/wildfly-8-installation.html | |
#author :Dmitriy Sukharev | |
#date :2016-06-18T02:45-0700 | |
#usage :/bin/bash wildfly-install.sh | |
#tested-version1 :10.0.0.CR3 | |
#tested-distros1 :Ubuntu 15.10; Debian 7,8; CentOS 7; Fedora 22 | |
#tested-version2 :10.0.0.Final |
// Promise.all is good for executing many promises at once | |
Promise.all([ | |
promise1, | |
promise2 | |
]); | |
// Promise.resolve is good for wrapping synchronous code | |
Promise.resolve().then(function () { | |
if (somethingIsNotRight()) { | |
throw new Error("I will be rejected asynchronously!"); |
location ~ /api { | |
proxy_ssl_server_name on; | |
set $proxy_pass_1 'https://sample.execute-api.us-east-1.amazonaws.com/stage'; | |
proxy_pass $proxy_pass_1$request_uri; | |
} |
// getComponent is a function that returns a promise for a component | |
// It will not be called until the first mount | |
function asyncComponent(getComponent) { | |
return class AsyncComponent extends React.Component { | |
static Component = null; | |
state = { Component: AsyncComponent.Component }; | |
componentWillMount() { | |
if (!this.state.Component) { | |
getComponent().then(Component => { |
function t(strings, ...values) { | |
const string = strings.reduce((s, next, i) => `${s}%{${i}}${next}`); | |
return new IntlMessageFormat(string, 'en-us').format(values); | |
} | |
const person = 'Mike'; | |
const age = 28; | |
console.log(t`${person} is age ${age}`); |
<!-- | |
Complete feature detection for ES modules. Covers: | |
1. Static import: import * from './foo.js'; | |
2. Dynamic import(): import('./foo.js').then(module => {...}); | |
Demo: http://jsbin.com/tilisaledu/1/edit?html,output | |
Thanks to @_gsathya, @kevincennis, @rauschma, @malyw for the help. | |
--> |
The proposal you’re about to read is not just a proposal. We have a working implementation of almost everything we discussed here. We encourage you to checkout and build our branch: our fork, with the relevant branch selected. Building and using the implementation will give you a better understanding of what using it as a developer is like.
Our implementation ended up differing from the proposal on some minor points. As our last action item before making a PR, we’re writing documentation on what we did. While I loathe pointing to tests in lieu of documentation, they will be helpful until we complete writing docs: the unit tests.
This repo also contains a bundled version of npm that has a new command, asset
. You can read the documentation for and goals of that comma
// @flow | |
import * as React from "react"; | |
import ResizeObserver from "resize-observer-polyfill"; | |
import invariant from "invariant"; | |
type Entry = { | |
+contentRect: { | |
+width: number, | |
+height: number |
/** | |
* @author ebidel@ (Eric Bidelman) | |
* License Apache-2.0 | |
*/ | |
// Prints the bytes cached by service worker. Breaks out each cache | |
// overall in-memory bytes used by the Cache Storage API for the site. | |
async function getCacheStoragesAssetTotalSize() { | |
// Note: opaque (i.e. cross-domain, without CORS) responses in the cache will return a size of 0. |