小编Hal*_*ton的帖子

.gitignore不会忽略目录

我做了什么:

我认为github gui中有一些奇怪的配置导致了这个问题并阻止我从命令行甚至git-bash轻松使用git.

我最后只是卸载github和git然后重新安装git for windows.我现在让一切都在命令行上运行(除了我从git-bash运行的ssh).github gui更容易,更可靠.

感谢mu无论花时间试图弄明白这一点.我最终没有使用他的答案,但如果我不需要重新安装git,那将是我需要做的.


我在我的本地机器上使用github gui.我只是注意到我要做的提交是要更新我最近更新的所有节点模块.我设置我的.gitignore忽略整个node_modules/目录.

我不知道该怎么做.我在.gitignore中包含的所有文件类型都被忽略了.它只是它似乎忽略的目录.

这是我的.gitignore文件:

#################
## Sublime Text
#################

*.sublime-project
*.sublime-workspace

#################
## Images
#################

*.jpg
*.jpeg
*.png
*.gif
*.psd
*.ai

#################
## Windows detritus
#################

# Windows image file caches
Thumbs.db
ehthumbs.db

# Folder config file
Desktop.ini

# Recycle Bin used on file shares
$RECYCLE.BIN/

# Mac crap
.DS_Store

#################
## Directories
#################

dev/
cms/core/config/
node_modules/
Run Code Online (Sandbox Code Playgroud)

git version-control github gitignore

60
推荐指数
4
解决办法
5万
查看次数

防止100vw创建水平滚动

如果元素设置为width: 100vw;并且存在垂直滚动条,则元素的宽度将等于视口加上滚动条的宽度.

有可能阻止这种情况吗?

是否可以在不禁用整个页面的水平滚动的情况下防止这种情况?除了改变我的css/markup以使元素100%的宽度,我无法想到任何东西.

在Windows 8.1上经过Chrome版本43.0.2357.81 m&FF 36.0.1和Opera 20.0.1387.91测试

这是所要求的代码:

HTML

<div class="parent">
    <div class="box"></div>
</div>
<div class="tall"></div>
Run Code Online (Sandbox Code Playgroud)

CSS

body { margin: 0; }
html { box-sizing: border-box; }
*, *::before, *::after {
    box-sizing: inherit;
    position: relative;
}
.parent {
    background: rgba(0, 0, 0, .4);
    height: 100px;
    width: 5rem;
    margin-bottom: 25px;
}

.box {
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .4);
    height: 50px;
    width: 100vw;
}

.tall {
    height: 100rem;
}
Run Code Online (Sandbox Code Playgroud)

css scroll css3

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

为什么我收到错误"试图打开未关闭的连接."?

我正在尝试通过mongoose将我的节点应用程序连接到mongodb.它似乎正在工作,因为我可以添加文档,但我得到错误{ [Error: Trying to open unclosed connection.] state: 2 }.

我创建了一个非常简单的应用程序,只是为了确保在连接我的实际应用程序之前一切正常.

这是我的简单应用程序:

var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var timeSchema = new Schema({ timestamp: String });
var Time = mongoose.model('Time', timeSchema);

mongoose.connect('mongodb://localhost/mydb');

var db = mongoose.connection;

db.on('error', console.error.bind(console, 'connection error: '));
db.once('open', function () {

  var testA = new Test({ timestamp: Date() });

});
Run Code Online (Sandbox Code Playgroud)

我也试过添加db.close()到最后,但它没有任何区别.

这是在Ubuntu 14.04 VPS上运行的:

  • Node.js v0.10.3
  • MongoDB 2.6.3
  • 猫鼬1.4.21

mongoose node.js node-mongodb-native

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

镀铬扩展,弹出窗口的高度

在我看来,弹出窗口的高度限制为489像素.如果我将弹出窗口的body元素设置为600像素的高度,则弹出窗口将获得滚动条(因为内部页面变大),但弹出窗口不会更改其大小.

是否可以使弹出窗口的高度大于489像素?

google-chrome-extension

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

如何测试函数是否调用特定方法/函数?

有没有办法在Mocha中测试函数是否调用特定方法或外部函数?

我正在使用Mocha和Chai,但我对任何其他断言库都开放.


好的,所以使用sinon测试是否正在调用methid是非常容易的.我不确定测试是否正在调用外部函数.所以我更新了这些例子来代表一些更"现实世界"的东西.我工作的一个节点的应用程序,所以foo.jsbar.js是两个模块.

例:

foo.js

var bar = require('bar');
var xyz = function () {};

var Foo = module.exports = function () {
  this.bar();
  bar();
  xyz();
};
Foo.prototype.bar = function () {};
Run Code Online (Sandbox Code Playgroud)

bar.js

var bar = module.exports = function () {};
Run Code Online (Sandbox Code Playgroud)

fooSpec.js

var chai      = require('chai');
var sinon     = require('sinon');
var sinonChai = require('sinonChai');
var expect    = chai.expect;
var Foo       = require('../lib/foo');

chai.use('sinonChai');

describe('Foo', function () {

  var method;

  beforeEach(function (done) {
    method = sinon.spy(Foo.prototype, 'bar'); …
Run Code Online (Sandbox Code Playgroud)

javascript tdd mocha.js node.js chai

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

如何找到"完整"图像的数量?

我想找到特定元素(div)中具有"完整"属性的图像数量(如在浏览器中已完成加载它们).

我现在已经磕磕绊绊了一个多小时,我的大脑已经完全油炸了.一些帮助将非常感谢.

谢谢

html javascript jquery complete

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

表单提交到_blank后如何刷新表单页面?

我有一个目标的HTML表单 _blank.我希望提交表单的页面在提交后重新加载.

所以这里是一些示例标记:

<form method="POST" action="result.php" target="_blank">
    <label for="name">Name:</label>
    <input type="text" name="name" />

    <label for="email">Email:</label>
    <input type="email" name="email" />

    <input type="submit" value="submit" />
</form>
Run Code Online (Sandbox Code Playgroud)

所以,当您提交这份表格将POSTresult.php一个新窗口或标签.这样就保留了表单页面.我希望表单页面重新加载,或者至少重置所有字段.

我试着<form onsubmit="location.reload()"...以及onsubmit="window.location.reload()",但什么都没有改变.

有什么建议?

(请不要jquery)

html javascript forms submit onsubmit

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

Webpack dev服务器不会自动重新加载

所以我设置了webpack webpack-dev-server,但是webpack-dev-server没有自动重新加载.如果我修改文件并保存它,那么在我手动刷新之前,浏览器没有任何变化.

这是我的webpack配置和运行的脚本文件webpack-dev-server.有没有人看到任何可能阻止自动重载工作的东西?

我通过阅读多个教程,文档和阅读react-create-app生成的文件将这些放在一起.


配置/ webpack.config.dev.js

'use strict';

const ExtractTextPlugin = require('extract-text-webpack-plugin');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const autoprefixer = require('autoprefixer');
const webpack = require('webpack');

const extractSass = new ExtractTextPlugin('style.css');

module.exports = {
    entry : './src/index.jsx',
    eslint: {configFile: './src/.eslintrc.json'},
    module: {
        loaders: [
            {
                exclude: /node_modules/,
                include: ['src'],
                loader: 'babel',
                test  : /(\.js|\.jsx)$/
            },
            {
                exclude: /node_modules/,
                include: ['src']
                loader : extractSass.extract([ 'css', 'postcss', 'sass' ]),
                test   : /\.scss$/
            }
        ],
        preLoaders: [
            { …
Run Code Online (Sandbox Code Playgroud)

javascript webpack webpack-dev-server

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

如何安装Node和NPM以便我不必使用sudo?

我试图在Ubuntu 14.04机器上设置Node.js和NPM但是遇到了一些麻烦.在我第一次尝试时,我EACCES在尝试安装软件包时遇到错误(有时甚至是sudo),所以我完全卸载了node和npm.现在我想弄清楚如何安装它们的方式不需要我运行一切sudo,也不会给我EACCES错误.

我宁愿不使用NVM,除此之外,我刚刚发现了一堆零散的部分答案,其中一些相互矛盾,或者只是使用略有不同的语法.

我真的很感激这方面的一些帮助.我刚刚从Windows切换到Linux,我正在尝试设置,以便我可以重新开始工作.

linux ubuntu node.js npm ubuntu-14.04

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

为什么git子树缺少提交?

我只是git subtree split在我的主分支上运行但是子树(dist分支)缺少分支上的最后两个提交master.我不知道该怎么做.我之前没有碰到这个.它始终没有问题.

这是我的github网络图(不包括dist):

github网络图

从主分支我跑了git subtree split -P dist -b dist.

如果我git logdist分支运行它会显示最近的提交6d1620a.在哪里17c1f3133dfc67

谁知道这里发生了什么?


更多详细信息特定于我的场景

我正在使用Yeoman生成的项目使用的部署方法.基本上意味着我有一个整体项目文件夹,其中有一个dev(或app)目录,其中所有开发都已完成,而dist目录是构建项目的目录(通过gulp构建过程).所以要部署我只需将dist目录拆分到它自己的分支中,然后将其推送到实时服务器.

看起来像这样:

gulp
git checkout master
git merge --no-ff dev
git subtree split -P dist -b dist
git push
Run Code Online (Sandbox Code Playgroud)

或者git subtree push -P dist origin dist也可以.

git deployment version-control git-subtree yeoman

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