Skip to content

Instantly share code, notes, and snippets.

View evansolomon's full-sized avatar

Evan Solomon evansolomon

View GitHub Profile
import Ember from 'ember';
export default Ember.Component.extend({
someData: 'hello'
didReceiveAttrs() {
console.log('didReceiveAttrs')
},
didUpdateAttrs() {
console.log('didUpdateAttrs')
}
@evansolomon
evansolomon / components.child-component.js
Created April 22, 2019 16:26
Subtle mutable data bug
import Ember from 'ember';
export default Ember.Component.extend({
actions: {
clearPersonData() {
this.set('person', null)
}
}
});
import Ember from 'ember';
export default Ember.Controller.extend({
contentHtml: Ember.String.htmlSafe(`
<p>Hello <strong>world</strong></p>
<p>This content has html like images</p>
<p><img src="http://placekitten.com.s3.amazonaws.com/homepage-samples/408/287.jpg"></p>
`)
});
import Ember from 'ember';
export default Ember.Component.extend({
tagName: 'video',
attributeBindings: [
'autoplay',
'muted',
'height',
'width',
'poster',
import Ember from 'ember';
const {
Component,
computed,
get,
guidFor
} = Ember;
export default Component.extend({
@evansolomon
evansolomon / gist:7ebcb5e4ae331e1997cd
Created July 8, 2015 19:30
react-native init tree
.
├── JSONStream
│   ├── LICENSE.APACHE2
│   ├── LICENSE.MIT
│   ├── examples
│   │   └── all_docs.js
│   ├── index.js
│   ├── package.json
│   ├── readme.markdown
│   └── test
@evansolomon
evansolomon / xhr.js
Created May 21, 2015 18:46
Chrome 43 changed the way XMLHttpRequest objects get serialized to JSON. Almost all of the fields as missing now.
var xhr = new XMLHttpRequest()
xhr.open('GET', 'http://requestb.in/155pmaz1')
xhr.onreadystatechange = function () {
if (xhr.readyState !== 4) return
var jsonifiedXhr = JSON.parse(JSON.stringify(xhr))
console.log(Object.keys(jsonifiedXhr))
}
xhr.send()
// Chrome 42
This file has been truncated, but you can view the full file.
{"participants":303854,"now":1427930520000,"secondsLeft":60}
{"participants":303865,"now":1427930521000,"secondsLeft":60}
{"participants":303871,"now":1427930522000,"secondsLeft":60}
{"participants":303875,"now":1427930523000,"secondsLeft":60}
{"participants":303884,"now":1427930524000,"secondsLeft":60}
{"participants":303893,"now":1427930525000,"secondsLeft":60}
{"participants":303900,"now":1427930526000,"secondsLeft":60}
{"participants":303907,"now":1427930527000,"secondsLeft":60}
{"participants":303917,"now":1427930528000,"secondsLeft":60}
{"participants":303931,"now":1427930529000,"secondsLeft":60}
$ aws lambda get-event-source --uuid my-events-uuid
{
"Status": "OK",
"UUID": "my-events-uuid",
"LastModified": "2014-11-22T02:37:00.000+0000",
"BatchSize": 1,
"Parameters": {
"InitialPositionInStream": "TRIM_HORIZON"
},
"Role": "arn:aws:iam::acct-number:role/lambda_exec_role",
@evansolomon
evansolomon / gist:9535323
Created March 13, 2014 19:36
Even when you don't care about a stream's data, you need to make sure it's produced.
var https = require('https')
https.get('https://medium.com', function (res) {
res.on('end', function () {
console.log('You will never see this')
})
})
https.get('https://medium.com', function (res) {
// This sets the stream to flowing mode and makes sure it gets through all of its