对于react.js来说是新手,在完成教程和阅读文档之后,我仍然在使用js fetch从JSON文件加载我的数据以及从对象数组中设置属性.我也不确定我是否正在我的事件处理程序中正确访问DOM属性.我必须错过一些相当简单的事情.
作为参考,这里是我的代码与项目的其余部分和这里就是它应该的样子.
ETA:我从文档中不知道babel浏览器已被弃用,因此决定只使用带有ES5语法的直接Javascript而不是JSX.代码在下面更新,但它仍然没有呈现标记.
var CanvasAnimation = React.createClass({
getInitialState: function() {
return {data: []};
},
loadData: function() {
/*
fetch("data.json")
.then(function(response) {
return response.json
.then(function(json){
this.setState({data: json});
}.bind(this))
}.bind(this));
*/
const data = [
{ id: "stalkerOne", width: 225, height: 434, spriteSheetURL: 'spriteSheets/stalkerone.jpg', rows: 5, columns: 5, totalFrames: 24 },
{ id: "stalkerTwo", width: 175, height: 432, spriteSheetURL: 'spriteSheets/stalkertwo.jpg', rows: 6, columns: 5, totalFrames: 26 },
{ id: "stalkerThree", width: 251, height: 432, spriteSheetURL: 'spriteSheets/stalkerthree.jpg', rows: 6, …Run Code Online (Sandbox Code Playgroud)我对Haskell相对较新,并且无法理解bifunctors的实用性.我认为我理论上理解它们:例如,如果我想映射抽象多种具体类型的类型,例如Either或Maybe,我需要将它们封装在一个bifunctor中.但一方面,这些例子似乎特别人为,另一方面,你似乎只能通过构图实现相同的功能.
作为一个例子,我在Jeremy Gibbons和Bruno C. d 的"迭代器模式的本质"中遇到了这个代码.S. Oliveira:
import Data.Bifunctor
data Fix s a = In {out::s a (Fix s a) }
map' :: Bifunctor s => (a -> b) -> Fix s a -> Fix s b
map' f = In . bimap f (map' f) . out
fold' :: Bifunctor s => (s a b -> b) -> Fix s a -> b
fold' f = f . bimap id (fold' f) . out
unfold' :: Bifunctor s …Run Code Online (Sandbox Code Playgroud)