This one catches errors not only during the ajax request, but during the
onSuccess handler execution.
const response = ajax(options).then(onSuccess).catch(onFailure)The appropriate translation to async/await could be something like this:
| function debugFocus(turnOn) { | |
| if (turnOn && window.debugFocusInterval) { | |
| console.log("debugFocus: already on"); | |
| return; | |
| } | |
| if (!turnOn && !window.debugFocusInterval) { | |
| console.log("debugFocus: already off"); | |
| return; | |
| } |
| #!/bin/bash | |
| # git-cleanup-repo | |
| # | |
| # Author: Rob Miller <[email protected]> | |
| # Adapted from the original by Yorick Sijsling | |
| git checkout master &> /dev/null | |
| # Make sure we're working with the most up-to-date version of master. | |
| git fetch |
| #!/bin/sh | |
| ### | |
| # SOME COMMANDS WILL NOT WORK ON macOS (Sierra or newer) | |
| # For Sierra or newer, see https://github.com/mathiasbynens/dotfiles/blob/master/.macos | |
| ### | |
| # Alot of these configs have been taken from the various places | |
| # on the web, most from here | |
| # https://github.com/mathiasbynens/dotfiles/blob/5b3c8418ed42d93af2e647dc9d122f25cc034871/.osx |
Append the following to the end of this file:
/Applications/Slack.app/Contents/Resources/app.asar.unpacked/src/static/ssb-interop.js
document.addEventListener('DOMContentLoaded', function() {
$.ajax({
url: 'https://cdn.rawgit.com/laCour/slack-night-mode/master/css/raw/black.css',
success: function(css) {
$("").appendTo('head').html(css);| /** | |
| * Converts a given object to a jsonapi-compliant version of it, suitable to be used in api calls | |
| * | |
| * Specifying relationship attributes | |
| * | |
| * Each property in the `relationshipAttrs` argument correspondes to an attribute name in `object`. | |
| * The value should be either a string or a small object specifying `name` (optional) and `type`. | |
| * | |
| * If the value is a string, this is used both for the name of the relationship in the resulting | |
| * payload object, and for the type of the objects related. However, if the value of a |
| import React, { Component } from ‘react’; | |
| const noop = () => {}; | |
| export default class MyComponent extends Component { | |
| state = { data: null, error: null }; | |
| handleSuccess = data => { | |
| this.setState({ data }); | |
| }; |
gem 'browserify-rails', '1.5.0' # until fix: https://github.com/browserify-rails/browserify-rails/issues/101
gem 'react-rails'Browserify-rails allows to use browserify within assets pipeline. React-rails is here only to allow to use #react_component (and thus, prerendering).
Note that jquery-rails can be removed from Gemfile, the npm version of jquery and jquery-ujs will be used instead.
| import { Component } from "React"; | |
| export var Enhance = ComposedComponent => class extends Component { | |
| constructor() { | |
| this.state = { data: null }; | |
| } | |
| componentDidMount() { | |
| this.setState({ data: 'Hello' }); | |
| } | |
| render() { |
Hi Nicholas,
I saw you tweet about JSX yesterday. It seemed like the discussion devolved pretty quickly but I wanted to share our experience over the last year. I understand your concerns. I've made similar remarks about JSX. When we started using it Planning Center, I lead the charge to write React without it. I don't imagine I'd have much to say that you haven't considered but, if it's helpful, here's a pattern that changed my opinion:
The idea that "React is the V in MVC" is disingenuous. It's a good pitch but, for many of us, it feels like in invitation to repeat our history of coupled views. In practice, React is the V and the C. Dan Abramov describes the division as Smart and Dumb Components. At our office, we call them stateless and container components (view-controllers if we're Flux). The idea is pretty simple: components can'