Set up project with ReactJS, webpack, and ES2015

这篇博客以一个简单的小程序来演示用 ReactJS + ES6 + webpack 搭建一个hello world 应用的过程。

官方文档中可知,ReactJS支持使用ES6。

本次就用ES6来编写ReactJS前端代码,并用webpack进行模块管理。

目标:创建两个组件,分别为hello.jsworld.js,然后调用这两个组件,在页面上进行渲染。

创建项目文件夹

1
2
mkdir simple-react-webpack
cd simple-react-webpack

ReactNative-NavigatorIOS

Demo screenshot

In this blog I will use a demo to show how ReactNative NavigatorIOS works.
The demo is written in ES6, you can check React docs to know more about it.
Below is the final app I made for this demo, you can get the code from my github repo. I use a very simple version of code to show the demo in this blog, be sure to have a look at the complete version on github if you are interested.

Swift optional type

为什么会出现optional类型?

在只有基础数据类型(整形Int、浮点数Double和Float、布尔类型Bool以及字符串类型String)时,Swift语言不会为默认为变量赋初始值,所有的变量必须手动赋值。不初始化就会报错, 例如下面的例子:

1
2
var plainString: String
//error: Variable used before being initialized

但是实际项目中存在需要某些变量先定义,随后在某个时机被初始化的需求。比如说View中的一个输入框emailTextField,它的属性emailTextField.text的值就只是在用户输入数据后才不为空。

后来曾思考,若都把可能为空的变量初始化为nil,之后再根据需求在不同时机改变它为非空的值,是不是可以解决这个问题?答案是否定的,因为我们随时可能会在这个变量上调用一些方法,但如果当时变量的值凑巧为nil时,就会导致程序crash。

为了解决问题:定义一个不需要初始化的变量,并且当这个变量在以后的调用过程中可以被安全使用,不论其是否为nil, Optional类型就顺理成章地出现了。