小编myu*_*suf的帖子

在Reactjs中获取表单数据

我的render函数中有一个简单的表单,如下所示:

render : function() {
      return (
        <form>
          <input type="text" name="email" placeholder="Email" />
          <input type="password" name="password" placeholder="Password" />
          <button type="button" onClick={this.handleLogin}>Login</button>
        </form>
      );
    },
handleLogin: function() {
   //How to access email and password here ?
}
Run Code Online (Sandbox Code Playgroud)

我应该在handleLogin: function() { ... }访问EmailPassword字段中写什么?

html javascript frontend reactjs

166
推荐指数
17
解决办法
19万
查看次数

React.js中的setState vs replaceState

我是React.js Library的新手,我正在浏览一些教程,我遇到了:

  • this.setState
  • this.replaceState

给出的描述不是很清楚(IMO).

setState is done to 'set' the state of a value, even if its already set 
in the 'getInitialState' function.
Run Code Online (Sandbox Code Playgroud)

同样的,

The replaceState() method is for when you want to clear out the values 
already in state, and add new ones.
Run Code Online (Sandbox Code Playgroud)

我试过this.setState({data: someArray});跟着this.replaceState({test: someArray});然后控制台.记录它们,我发现state现在有两个datatest.

然后,我尝试this.setState({data: someArray});跟着this.setState({test: someArray});然后控制台.记录它们,我发现state再次有两个datatest.

那么,这两者究竟有什么区别?

javascript frontend reactjs

93
推荐指数
3
解决办法
6万
查看次数

使用reactjs和requirejs

最近,我开始使用reactjs连同backbonejs路由器来构建应用程序.

我通常requirejs用于依赖和代码管理.但是,当我尝试包含包含jsx语法的文件时出现问题.

到目前为止,这就是我的意思router.js:

define(["backbone", "react"], function(Backbone, React) {

  var IndexComponent = React.createClass({
    render : function() {
      return (
        <div>
        Some Stuff goes here
        </div>
        );
    }
  });



  return Backbone.Router.extend({
    routes : {
      "": "index"
    },
    index : function() {
      React.renderComponent(<IndexComponent />, document.getElementById('index'));
    }
  });
});
Run Code Online (Sandbox Code Playgroud)

如何将IndexComponent放在自己的文件中并在此文件中调用它?我已经尝试了通常的方法(与我使用的主干和反应相同)但由于jsx语法而出错.

javascript frontend requirejs reactjs

69
推荐指数
1
解决办法
4万
查看次数

Angular.js如何从指令更新范围?

如何更新指令范围?

<div ng-controller="MyCtrl">
    <p t></p>
</div>
Run Code Online (Sandbox Code Playgroud)

我的指示:

var myModule = angular.module('myModule', [])
    .directive('t', function () {
        return {
            template: '{{text}}',
            link: function (scope, element, attrs) {
                scope.text = '1';
                element.click(function() {
                     scope.text = '2';
                });
            }
        };
    })
    .controller('MyCtrl', ['$scope', function ($scope) {
    }]);
Run Code Online (Sandbox Code Playgroud)

点击指令后不更新.

angularjs angularjs-directive angularjs-scope

16
推荐指数
1
解决办法
3万
查看次数

在KnexJS中进行Upsert

我在PostgreSQL中有一个upsert查询,如:

INSERT INTO table
  (id, name)
values
  (1, 'Gabbar')
ON CONFLICT (id) DO UPDATE SET
  name = 'Gabbar'
WHERE
  table.id = 1
Run Code Online (Sandbox Code Playgroud)

我需要使用knex来进行此upsert查询.怎么去这个?

sql postgresql knex.js

14
推荐指数
3
解决办法
7008
查看次数

如何使用Sublime Text中的键盘快捷键插入一段文本?

如何console.log()在Sublime Text中设置一个快捷方式来插入和包装它当前选择而不安装任何插件或额外的第三方内容?

sublimetext sublimetext2 sublimetext3

10
推荐指数
1
解决办法
1899
查看次数

在ReactJS中从哪里发出初始AJAX请求

我有一个页面,我需要加载一些初始的Ajax数据.
我在这个Reactjs 页面上看到我应该打电话componentDidMount.

什么是优势,从发出请求componentDidMount,而不是componentWillMount

javascript frontend reactjs

8
推荐指数
2
解决办法
4202
查看次数

字符串作为reactjs中的html

我有一个返回几行html的函数,如下所示:

render: function() {
  var badges = user.get('achievements').badges.map(function(badge) {
    var str = '<h3><span className="fa fa-fw '

    switch(badge.id) {
    case '0':
      str += ('fa-briefcase"></span><small>' + badge.text + '</small></h3>')
      break;
    case '1':
      str += ('fa-shopping-cart"></span><small>' + badge.text + '</small></h3>')
      break;
    ...
    }

    return str;
  });

  return (
    <div className="pull-right">
      {badges}
    </div>
  );
}
Run Code Online (Sandbox Code Playgroud)

在执行此操作时,字符串将在页面上呈现为文本:

<h3><span className="fa fa-fw fa-briefcase"></span><small>Visionary</small></h3><h3><span className="fa fa-fw fa-shopping-cart"></span><small>Active</small></h3><h3><span className="fa fa-fw fa-sitemap"></span><small>Lorem</small></h3><h3><span className="fa fa-fw fa-tasks"></span><small>Ipsum</small></h3><h3><span className="fa fa-fw fa-signal"></span><small>Dolor</small></h3><h3><span className="fa fa-fw fa-check-square"></span><small>Amet;</small></h3>

如何将其呈现为正确的HTML?

javascript reactjs react-jsx

5
推荐指数
1
解决办法
6853
查看次数

如果不存在则插入,否则删除 MongoDB

所以我在 MongoDB (2.6.4) 中有一个查询,我试图在其中实现一个简单的 upvote/downvote 机制。当用户单击 upvote 时,我需要执行以下操作:

如果用户已经投票,则删除投票。

否则,如果用户不赞成,则添加赞成票并删除反对票(如果存在)。

到目前为止,我形成的查询(不正确)是:

db.collection.aggregate([
{
    $project: {
        "_id" : ObjectId("53e4d45c198d7811248cefca"),
        "upvote": {
           "$cond": 
            [
            {"$in": ["$upvote",1] },
            {"$pull": {"upvote" : 1}},
            {"$addToSet": {"upvote" : 1}, "$pull": {"downvote": 1}}
            ]
        }
    }
}
])
Run Code Online (Sandbox Code Playgroud)

其中“1”是尝试投票的用户 ID。双方upvotedownvote都含有分别那些谁已经upvoted和downvoted的用户id数组。

对于查询的输出,我只想要一个 bool 值:true如果$cond评估为true, else false

mongodb mongodb-query

3
推荐指数
1
解决办法
2391
查看次数

Nodejs的Router文件中Expose与Creating对象

所以,我刚开始接触expressjs 4.0.0并发现了这个express.Router()东西,这真的很棒。

问题是,现在我的所有路由都在另一个文件中,如何将对象公开给路由文件?

服务器文件:

...
var 护照 = require('护照');
var router = require('./app/routes.js')(passport); // 不会工作
app.use('/', router);
应用程序.听(8080);

路由.js 文件:

...
var Express = require('express');
var router =express.Router(); //expressjs 4.0中的新功能
//路由在这里
module.export = router;

那么,我应该如何访问路由器文件中的护照对象?我应该创建一个新对象还是有办法将 server.js 对象传递给 router.js 文件?

javascript node.js express mean-stack

1
推荐指数
1
解决办法
1562
查看次数

使用预处理程序指令而不使用#字符

有没有办法在不使用C代码中的#字符的情况下使用预处理程序指令?我们可以通过使用它的ASCII等等来以某种方式回显哈希字符吗?

例如:1可以通过'SOH'在.c源文件中使用来回显.是否有类似的黑客 '#'

c directive c-preprocessor

0
推荐指数
1
解决办法
111
查看次数