Use these rapid keyboard shortcuts to control the GitHub Atom text editor on Mac OSX.
- ⌘ : Command key
- ⌃ : Control key
- ⌫ : Delete key
- ← : Left arrow key
- → : Right arrow key
- ↑ : Up arrow key
const path = require('path'); | |
module.exports = { | |
publicPath: './', | |
lintOnSave: false, | |
runtimeCompiler: true, | |
devServer: { | |
stdin: true | |
} | |
} |
// Uses regular HTML tables with bootstrap CSS classes - https://getbootstrap.com/docs/4.1/content/tables/ | |
// Uses VueJS bootstrap-4 b-form-textarea form input: https://bootstrap-vue.js.org/docs/components/form-textarea | |
<template> | |
<!-- div that makes table responsive with horizontal scrollbar on small screens --> | |
<div class="table-responsive"> | |
<table class="table table-bordered"> | |
<!-- |
Use these rapid keyboard shortcuts to control the GitHub Atom text editor on Mac OSX.
import React, { Component } from 'react'; | |
import { View, Text } from 'react-native'; | |
import { Button, Loading } from '../components/common/'; | |
import axios from 'axios'; | |
export default class LoggedIn extends Component { | |
constructor(props){ | |
super(props); | |
this.state = { | |
loading: true, |
# snip | |
render() { | |
return( | |
<View style={styles.container}> | |
<Button onPress={this.props.deleteJWT}> | |
Log Out | |
</Button> | |
</View> | |
); |
# App.js render method | |
render() { | |
if (this.state.loading) { | |
return ( | |
<Loading size={'large'} /> | |
); | |
} else if (!this.state.jwt) { | |
return ( | |
<Auth newJWT={this.newJWT} /> |
# snip | |
export default class App extends Component { | |
constructor() { | |
super(); | |
this.state = { | |
jwt: '', | |
loading: true | |
} |
# snip | |
import deviceStorage from './services/deviceStorage.js'; | |
export default class App extends Component { | |
constructor() { | |
super(); | |
this.state = { | |
jwt: '', | |
} |
import { AsyncStorage } from 'react-native'; | |
const deviceStorage = { | |
# code omitted for brevity | |
async deleteJWT() { | |
try{ | |
await AsyncStorage.removeItem('id_token') | |
.then( | |
() => { |
import { AsyncStorage } from 'react-native'; | |
const deviceStorage = { | |
# code removed for brevity | |
async loadJWT() { | |
try { | |
const value = await AsyncStorage.getItem('id_token'); | |
if (value !== null) { | |
this.setState({ |