0%

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

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

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

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

创建项目文件夹

1
2
mkdir simple-react-webpack
cd simple-react-webpack
阅读全文 »

为什么会出现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类型就顺理成章地出现了。

阅读全文 »