2016-04-25

聚沙

兼容 IE8

ES6 promise

Object.assign()

default or catch

在兼容性测试过程中,对下面的代码(babel 自动生成的):

1
2
3
function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : { default: obj };
}

或者这种:

1
module.exports = _main2.default;

出现“缺少标识符、字符串或数字”的错

得在对象的属性上加”“才可以。

1
2
3
4
5
function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : { default: obj };
}

module.exports = _main2['default'];

但问题其实并没有结束,问题的根源不完全是这里,因为这样是没问题的

1
2
3
function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : { name: obj };
}

其实是 default 的问题,作为一个关键字

总之,避免使用关键字,或者保留字作为对象的属性值,尤其是在习惯不加引号的情况下

相关讨论:Allow reserved words for properties

NPM

1
2
npm install --save // 保存到 dependencies
npm install --save-dev // 保存到 devDependencies

阅读

新浪微博:怎么更优雅地解决手机APP“裂图、白图”的问题

Redux在React Native下的使用讲解

Comments