我正在创建我的第一个Bower组件.运行bower init
脚本后问我'这个包暴露了什么类型的模块?' 有这些选项:
这些选项有什么区别?
我试图通过使用这样的嵌套属性来组织我的状态:
this.state = {
someProperty: {
flag:true
}
}
Run Code Online (Sandbox Code Playgroud)
但是像这样更新状态,
this.setState({ someProperty.flag: false });
Run Code Online (Sandbox Code Playgroud)
不起作用.怎么能正确完成?
我理解为什么var
采用这个名字 - 它是变量的,const
- 它是一个常量,但名称背后的含义是什么let
,它的范围是当前的块?随它去?
我是ReactJS和JSX的新手,我对下面的代码有点问题.
我试图className
在每个属性上添加多个类li
:
<li key={index} className={activeClass, data.class, "main-class"}></li>
Run Code Online (Sandbox Code Playgroud)
我的React组件是:
var AccountMainMenu = React.createClass({
getInitialState: function() {
return { focused: 0 };
},
clicked: function(index) {
this.setState({ focused: index });
},
render: function() {
var self = this;
var accountMenuData = [
{
name: "My Account",
icon: "icon-account"
},
{
name: "Messages",
icon: "icon-message"
},
{
name: "Settings",
icon: "icon-settings"
}
/*{
name:"Help & Support <span class='font-awesome icon-support'></span>(888) 664.6261",
listClass:"no-mobile last help-support last"
}*/
];
return ( …
Run Code Online (Sandbox Code Playgroud) 我的日常工作是使用AngularJS的客户开发人员.我们正在评估是否要使用TypeScript.我对typescript做了一些研究,几乎每个我需要的JavaScript包都必须有定义类型文件.我发现这不是很方便,特别是如果我想尝试新的东西,他们没有它的定义.它真的很令人沮丧.(即使是当前的jQuery定义也会给我一些问题,如果我想使用typescript 1.5 beta).我开始关注ES6,它看起来与TypeScript类似.我应该只使用ES6吗?另外,我听说angular 2将完全支持TypeScript,这是我应该坚持下去的一个原因吗?
我想在a中实现常量class
,因为在代码中找到它们是有意义的.
到目前为止,我一直在使用静态方法实现以下解决方法:
class MyClass {
static constant1() { return 33; }
static constant2() { return 2; }
// ...
}
Run Code Online (Sandbox Code Playgroud)
我知道有可能摆弄原型,但许多人建议不要这样做.
有没有更好的方法在ES6类中实现常量?
我一直在寻找互联网,没有明确的答案.
目前使用的NodeJS只CommonJS的语法来加载模块,如果你真的想使用标准ES2015模块语法,你要么必须事先transpile,或在运行时使用外部模块加载.
目前我不太喜欢使用这两种方法,NodeJS维护者是否计划支持ES2015模块?我还没有找到关于此的暗示.
目前NodeJS 6.x声称支持96%的ES2015功能,但没有任何模块参考(NodeJS ES2105支持链接).
你知道NodeJS是否会在不久的将来支持这些模块?
Node module.exports
和ES6有什么区别export default
?我试图找出当我尝试export default
在Node.js 6.2.2中时为什么我得到"__不是构造函数"错误.
'use strict'
class SlimShady {
constructor(options) {
this._options = options
}
sayName() {
return 'My name is Slim Shady.'
}
}
// This works
module.exports = SlimShady
Run Code Online (Sandbox Code Playgroud)
'use strict'
class SlimShady {
constructor(options) {
this._options = options
}
sayName() {
return 'My name is Slim Shady.'
}
}
// This will cause the "SlimShady is not a constructor" error
// if in another file I try …
Run Code Online (Sandbox Code Playgroud) 我正在使用reactjs.
当我运行下面的代码时,浏览器会说:
未捕获的TypeError:超级表达式必须为null或函数,而不是未定义
任何有关错误的提示都将受到赞赏.
首先是用于编译代码的行:
browserify -t reactify -t babelify examples/temp.jsx -o examples/public/app.js
Run Code Online (Sandbox Code Playgroud)
和代码:
var React = require('react');
class HelloMessage extends React.Component {
render() {
return <div>Hello </div>;
}
}
Run Code Online (Sandbox Code Playgroud)
更新:在这个问题上在地狱火中燃烧了三天后,我发现我没有使用最新版本的反应.
全球安装:
sudo npm install -g react@0.13.2
Run Code Online (Sandbox Code Playgroud)
在本地安装:
npm install react@0.13.2
Run Code Online (Sandbox Code Playgroud)
确保浏览器也使用正确的版本:
<script type="text/javascript" src="react-0.13.2.js"></script>
Run Code Online (Sandbox Code Playgroud)
希望这可以拯救别人三天的宝贵生命.
我刚刚发现了chromestatus.com,在我失去了几个小时之后,发现了这个功能条目:
地图:地图对象是简单的键/值映射.
那让我困惑.常规的JavaScript对象是字典,所以Map
与字典有什么不同?从概念上讲,它们是相同的(根据 地图和字典之间的区别是什么?)
文档chromestatus引用也没有帮助:
映射对象是键/值对的集合,其中键和值都可以是任意ECMAScript语言值.不同的键值只能出现在Map集合中的一个键/值对中.使用在创建Map时选择的比较算法区分不同的键值.
Map对象可以按插入顺序迭代其元素.必须使用散列表或其他机制来实现Map对象,这些机制平均提供对集合中元素数量的次线性访问时间.此Map对象规范中使用的数据结构仅用于描述Map对象所需的可观察语义.它不是一个可行的实施模型.
...对我来说仍然听起来像是一个对象,显然我错过了一些东西.
为什么JavaScript获得(受到良好支持的)Map
对象?它有什么作用?
ecmascript-6 ×10
javascript ×6
node.js ×3
reactjs ×3
module ×2
angularjs ×1
bower ×1
class ×1
constants ×1
css ×1
dictionary ×1
es2015 ×1
es6-modules ×1
js-amd ×1
let ×1
setstate ×1
typescript ×1