小编Tra*_*Liu的帖子

Nodejs npm显示包的最新版本

如何使用npm显示模块的最新版本?我期待npm --latest express打印出来的东西v3.0.0.

versioning node.js npm

273
推荐指数
7
解决办法
12万
查看次数

node.js中的require()如何工作?

我试过这个:

// mod.js
var a = 1;
this.b = 2;
exports.c = 3;

// test.js
var mod = require('./mod.js');
console.log(mod.a);    // undefined
console.log(mod.b);    // 2
console.log(mod.c);    // 3, so this === exports?
Run Code Online (Sandbox Code Playgroud)

所以我想象require()可能是这样实现的:

var require = function (file) {
    var exports = {};
    var run = function (file) {
        // include "file" here and run
    };
    run.apply(exports, [file]);
    return exports;
}
Run Code Online (Sandbox Code Playgroud)

是对的吗?请帮我理解require(),或者在哪里可以找到源代码.谢谢!

javascript this require apply node.js

71
推荐指数
3
解决办法
4万
查看次数

将Mongoose docs转换为json

我以这种方式将jongoose docs作为json返回:

UserModel.find({}, function (err, users) {
    return res.end(JSON.stringify(users));
}
Run Code Online (Sandbox Code Playgroud)

但是,用户.__ proto__也被退回了.没有它我怎么能回来?我尝试了这个,但没有奏效:

UserModel.find({}, function (err, users) {
    return res.end(users.toJSON());    // has no method 'toJSON'
}
Run Code Online (Sandbox Code Playgroud)

json document object mongoose node.js

63
推荐指数
5
解决办法
9万
查看次数

小胡子 - 如何检测数组不是空的?

我想用Mustache实现以下逻辑:

{{#if users.length > 0}}
    <ul>
        {{#users}}
            <li>{{.}}</li>
        {{/users}}
    </ul>
{{/if}}

// eg. data = { users: ['Tom', 'Jerry'] }
Run Code Online (Sandbox Code Playgroud)

我应该修改users结构以满足需要吗?例如:

{{#hasUsers}}
    <ul>
        {{#users}}
            <li>{{.}}</li>
        {{/users}}
    </ul>
{{/hasUsers}}

// eg. data = { hasUsers: true, users: ['Tom', 'Jerry'] }
Run Code Online (Sandbox Code Playgroud)

arrays logic mustache

37
推荐指数
2
解决办法
2万
查看次数

Rails - 如何在初始化器中设置全局实例变量?

我正在使用预测宝石.我将推荐人初始化为initializers/predictor.rb:

require 'course_recommender'    

recommender = CourseRecommender.new

# Add records to the recommender.
recommender.add_to_matrix!(:topics, "topic-1", "course-1")
recommender.add_to_matrix!(:topics, "topic-2", "course-1")
recommender.add_to_matrix!(:topics, "topic-1", "course-2")
Run Code Online (Sandbox Code Playgroud)

然后我想在CourseController中使用推荐器,如下所示:

class CourseController < ApplicationController
  def show
    # I would like to access the recommender here.
    similiar_courses = recommender.similarities_for("course-1")
  end
end
Run Code Online (Sandbox Code Playgroud)

我怎样才能设置recommender为应用程序控制器变量,以便在控制器中访问它?

controller ruby-on-rails initializer

13
推荐指数
2
解决办法
9373
查看次数

Twitter引导程序 - 下拉菜单中的单词不起作用

我申请word-wrap: break-word了twitter bootstrap dropdown-nemu,但它没有用.这是JSFiddle.

我尝试了一个简化的样本,它有效:

<ul style="width: 60px">
    <li>
        <a style="word-wrap: break-word">fdsssssssssssssssssssssssssdfdsfsdfsdf</a>
    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

word-wrap twitter-bootstrap drop-down-menu

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

Rails返回MIME类型为"text/html"的.js

我建立了一个网站.在开发模式下,它很好地服务于.js文件.但是,在生产模式下,会发生以下错误:

Refused to execute script from 'http://bowuzhi.herokuapp.com/javascripts/items.js' because its MIME type ('text/html') is not executable, and strict MIME type checking is enabled.
Run Code Online (Sandbox Code Playgroud)

http://bowuzhi.herokuapp.com/javascripts/items.js的内容是html:

<div class='page-header'>
<a class="btn btn-primary" href="/zh-TW/items/new"><span class='glyphicon glyphicon-plus'></span>
New
</a><h1>Catalog</h1>
</div>
<div class='row' id='items'>
</div>
<div class='row'>
<div class='col-md-12'>

</div>
</div>
<script src="/javascripts/items.js"></script>
Run Code Online (Sandbox Code Playgroud)

这个网站是在heroku上:http://bowuzhi.herokuapp.com.

为什么.js原来是html?

ruby-on-rails mime-types

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

使用JavaScript实现PHP字符串xor

我想将这个PHP代码$a ^ $b(其中a的长度为16,b为32)转换为javascript代码.这是我的实施.

    var xor = "";
    for (var i = 0; i < a.length; i++) {
        xor += String.fromCharCode(a.charCodeAt(i) ^ b.charCodeAt(i));
    }
    xor = b.substr(-16) + xor;
Run Code Online (Sandbox Code Playgroud)

但是,结果不一样.请帮我搞清楚.谢谢.

顺便说一句,这是我正在解决的代码部分:

    var secret = "secret";
    var password = "password";
    var chal = "2ba5565a539c57c1ce2356e218faa321";
    var hexchal = php.pack('H32', chal);
    var newchal, newpwd, pappassword;

    newchal = php.pack('H*', php.md5(hexchal + secret));
    newpwd = php.pack("a32", password);
    var xor = "";
    for (var i = 0; i < newchal.length; i++) {
        xor += String.fromCharCode(newchal.charCodeAt(i) …
Run Code Online (Sandbox Code Playgroud)

javascript php string xor

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

Node.js - 在这里需要mongoose导致冗余?

我有以下Node.js目录结构.

|--app/
   |--app.js
   |--routers/
      |--index.js/
   |--models/
      |--schemas.js
      |--post.js
Run Code Online (Sandbox Code Playgroud)

app.js中,有一条线就像这样mongoose.connect('mongodb://localhost/' + config.DB_NAME);.在schema.js中:

var mongoose = require('mongoose')
    , Schema = mongoose.Schema
    , ObjectId = Schema.ObjectId;

var PostSchema = new Schema({
    title: String
    , author: String
    , body: String
    , creataAt: { 
        type: Date
        , default: Date.now
    }
});

// other schemas goes here

module.exports.PostSchema = PostSchema;
Run Code Online (Sandbox Code Playgroud)

post.js中:

var mongoose = require('mongoose')
    , PostSchema = require('./schemas').PostSchema
    , PostModel = mongoose.model('Post', PostSchema);

module.exports = PostModel;
Run Code Online (Sandbox Code Playgroud)

在 …

redundancy arguments require mongoose node.js

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

Rails只接受创建的accept_nested_attributes_for

我有一个Post模特.我想让用户在创建/更新帖子时创建帖子评论accepts_nested_attributes_for :comments.但是,我不想让用户通过嵌套属性更新注释.

有办法做某事accepts_nested_attributes_for :comments, create_only: true吗?

ruby-on-rails nested-attributes

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