3 Ways to Fine-tune Presentational Components

Three ways to fine-tune your React presentational components  #reactjs #javascript

  • Here are three ways I’ve found to make React presentational components work as re-usable building blocks.
  • Here are two stories for a text input component: the first shows the component in its valid state, and the second show the component in its invalid state.
  • Instead, extract a new component and pull it up: – – Let the container decide explicitly when and where show presentational components.
  • As you keep pulling presentational components up, they start looking like enhanced native elements, so you’d like to be able to pass all props you would pass to a native element, like or .
  • Inside the component, extract the props you’ve defined yourself and pass the rest to the element that you’re wrapping: – – Here, we’re separating the prop from the rest, and passing the remaining props to the element.


Saturday, Feb 17 2018

in

javascript

react

Continue reading “3 Ways to Fine-tune Presentational Components”

For animating #d3js in #reactjs react-transition-group react-motion…

  • For a drop-in replacement for and , use the v1 release, which is still actively maintained.
  • Documentation and code for that release are available on the branch.
  • You can send pull requests with v1 bugfixes against the branch.

react-transition-group – An easy way to perform animations when a React component enters or leaves the DOM
Continue reading “For animating #d3js in #reactjs
react-transition-group
react-motion…”

Query Components with Apollo – Kureev Alexey – Medium

  • After Apollo takes care of fetching and mapping props to query parameters, query component uses “function-as-a-child” approach to expose a child-independent API with injected data.Comparing to the standard approach were you add a graphql wrapper to your higher-order components, query components have a set of advantages:Testability.
  • Query Components abstracts out your data management layer so you can focus on business logic and change underlying implementation if needed.Once a Query Component is defined, it can be used as an any other component in your application:A nice side effect of decoupling higher-order components into Query Components is minimizing…
  • If the data management layer grows, it won’t affect presenter components unless they have to reflect new data properties.Mutations with Query ComponentsMutations are not that straightforward as queries.
  • For example:Therefore, you can use this component in a similar way:So the concept is the same: Query Component receives a bunch of props that are later on used as parameters for the mutation query.Testing Query Components like a Pro 😎How to test Query Components?When it comes to testing, Apollo-based components have…
  • In other words, we check if given data.x complies to the shape of the mock that was passed to the fake client during initialization.And the last, but not least: query component should call a children function with the data, pulled from Apollo.

A couple of months ago, we started to use Apollo Client (+React Native) at Werkspot. From the very beginning, Apollo overwhelmed us by the simplicity and flexibility it provides. It inspired us to…
Continue reading “Query Components with Apollo – Kureev Alexey – Medium”

A Solution To The React className Controversy – Burke Knows Words

  • People can be so cruel.Another one of these very difficult and sensitive topics is the use of className instead of class in React.Introducing Simple React Snippets: class to classNameNearly everyone has heard of the world famous Simple React Snippets for VS Code.
  • The set of React Snippets that is so good, Ryan Florence once said…And now, Simple React Snippets is even better because it has solved one of the most contentious, difficult and time consuming tasks in React.
  • We don’t go to bed when it gets dark because we have ELECTRICITY, and we don’t have to use Find and Replace to change class to className because Simple React Snippets will now do it for you.How It worksSimple React Snippets uses a very complicated and advanced algorithm to find any…
  • This will bring up the “React: class to ClassName” command.
  • It feels kind of like I’m inviting myself into your house.In any event, I’ll continue to work on that portion and once I’ve ironed out the edge cases, this generation might be the last to know the pains of having to change class to className.What a time to be alive!Grab…

The tech community is no stranger to controversy. Just the other week I was faced with an extremely awkward and difficult situation when someone I thought was a close friend (who I won’t name…
Continue reading “A Solution To The React className Controversy – Burke Knows Words”

The Official Microsoft ASP.NET Site

React.js +  Core 2.0

  • The product(s) you are about to install leverage the Web Platform Installer (WebPI) for installation.
  • By downloading and using the Web Platform Installer (WebPI), you agree to the license terms and privacy statement for WebPI.
  • This installer will contact Microsoft over the Internet to retrieve product information.
  • WebPI uses the Microsoft Customer Experience Improvement Program (CEIP), which is turned on by default, see privacy statement for more information.
  • To view which software uses CEIP, see here.

Home of the Microsoft ASP.NET development community. Download Visual Studio, post to the forums, read ASP.NET blogs and learn about ASP.NET.
Continue reading “The Official Microsoft ASP.NET Site”

5 JavaScript Style Guides — Including AirBnB, GitHub, & Google

  • 5 JavaScript Style Guides — Including AirBnB, GitHub,  GoogleLearn to code like a GooglerWhether you’re just starting to learn JavaScript, or getting ready for your big interview with AirBnB, here are 5 style guides that can help you write cleaner code.What the heck is a style guide?A style guide is a set of standards…
  • As you read through these guides, you can get an idea for how code is written at the respective companies.Why do we need style guides?For one main reason: Everyone writes code differently.
  • That’s all fine and dandy as long as we each work on our code.
  • But what happens when you have 10, 100, or even 1,000 developers all working on the same codebase?
  • Style guides are created so new developers can get up to speed on a code base quickly, and then write code that other developers can understand quickly and easily!

Whether you’re just starting to learn JavaScript, or getting ready for your big interview with AirBnB, here are 5 style guides that can help you write cleaner code. A style guide is a set of…
Continue reading “5 JavaScript Style Guides — Including AirBnB, GitHub, & Google”

Easily display PDF files in your #ReactJS application: by @wojtekmaj91 #JavaScript

Easily display PDF files in your #ReactJS application:  by @wojtekmaj91 #JavaScript

  • We strongly recommend to use Node >= 6 and npm >= 5 for faster installation speed and better disk usage.
  • Your project needs to use React 15.5 or later.
  • If you use older version of React, please refer to the table below to find suitable React-PDF version.
  • Add React-PDF to your project by executing .
  • This project wouldn’t be possible without awesome work of Niklas Närhinen niklas@narhinen.net who created its initial version and without Mozilla, author of pdf.js.

react-pdf – Easily display PDF files in your React application.
Continue reading “Easily display PDF files in your #ReactJS application: by @wojtekmaj91 #JavaScript”

No more hassle with React Native

No more hassle with @reactnative -  @ir_ignite @infinite_red #reactNative #ignite #devLife

  • If you have any experience with React Native, you’ll already know about some great React Native libraries.
  • You might have even heard about this awesome React Native repository where we can find wonderful libraries.
  • They have created Ignite, a framework (or kit) of libraries using best practices for React Native.
  • There are a lot of really cool things to learn, and I highly recommend you create a new Ignite app and check out the generated code.
  • I’ve previously talked about Ignite in this drip, the libraries they use and how to start a new app.

No more hassle with React Native
Continue reading “No more hassle with React Native”

React.js best practices and conventions

An opinionated guide to #ReactJS best practices and conventions:  #JavaScript

  • The following guidelines mostly focus on component structure and JSX.
  • However, by following a few general guidelines for handling JSX in components, it’s far more readable and not such an eyesore.
  • No matter how few elements are being returned, I choose to write any JSX which contains nested elements across multiple lines with indentation to enhance readability, i.e:

    Furthermore, while the parenthesis are not technically required with a single line JSX statement, I still use them for the sake of consistency (and because unrestrained elements floating about in my JS makes my left eye twitch uncontrollably).

  • These guidelines are by no means authoritative or exhaustive, but I feel they are a good starting point for organising and standardising React components and some of the more common use cases I encounter.
  • Hopefully these guidelines provide a useful starting point for organising your React components.

An opinionated set of React.js best practices to make components more readable, more robust and easily maintainable.
Continue reading “React.js best practices and conventions”