小编Jas*_*lsa的帖子

如何使用Grunt.js(0.3.x)连接和缩小多个CSS和JavaScript文件

注意:此问题仅与Grunt 0.3.x相关,仅供参考.有关最新Grunt 1.x版本的帮助,请参阅此问题下方的评论.

我目前正在尝试使用Grunt.js来设置自动构建过程,以便首先连接然后缩小CSS和JavaScript文件.

我已经能够成功连接和缩小我的JavaScript文件,虽然每次我运行grunt时它似乎只是附加到文件而不是覆盖它们.

至于缩小甚至连接CSS,我至今无法做到这一点!

在咕噜CSS模块方面,我已经尝试使用consolidate-css,grunt-css&cssmin但无济于事.无法理解如何使用它们!

我的目录结构如下(是一个典型的node.js应用程序):

  • app.js
  • grunt.js
  • /public/index.html
  • / public/css/[各种css文件]
  • / public/js/[各种javascript文件]

这是我的grunt.js文件目前在我的应用程序的根文件夹中的样子:

module.exports = function(grunt) {

  // Project configuration.
  grunt.initConfig({
    pkg: '<json:package.json>',
    concat: {
      dist: {
        src: 'public/js/*.js',
        dest: 'public/js/concat.js'
      }
    },
    min: {
      dist: {
        src: 'public/js/concat.js',
        dest: 'public/js/concat.min.js'
      }
    },
    jshint: {
      options: {
        curly: true,
        eqeqeq: true,
        immed: true,
        latedef: true,
        newcap: true,
        noarg: true,
        sub: true,
        undef: true,
        boss: true,
        eqnull: true,
        node: true
      },
      globals: …
Run Code Online (Sandbox Code Playgroud)

javascript css concatenation minify gruntjs

96
推荐指数
3
解决办法
11万
查看次数

使用Composer和autoload.php在PHPUnit中自动加载类

我刚刚通过Composer安装了Sebastian Bergmann的PHPUnit版本3.7.19,并编写了一个我想进行单元测试的课程.

我想让我的所有课程自动加载到每个单元测试中,不必使用includerequire在我的测试的顶部,但这证明是困难的!

这是我的目录结构的样子(尾部/斜杠表示目录,而不是文件):

  • composer.json
  • composer.lock
  • composer.phar
  • LIB /
    • returning.php
  • 测试/
    • returningTest.php
  • 供应商/
    • 斌/
      • PHPUnit的
    • 作曲家/
    • PHPUnit的/
    • symfony的/
    • autoload.php

我的composer.json文件包括以下内容:

"require": {
    "phpunit/phpunit": "3.7.*",
    "phpunit/phpunit-selenium": ">=1.2"
}
Run Code Online (Sandbox Code Playgroud)

我的returns.php类文件包括以下内容:

<?php
class Returning {
    public $var;
    function __construct(){
        $this->var = 1;
    }
}
?>
Run Code Online (Sandbox Code Playgroud)

我的returnsTest.php测试文件包括以下内容:

<?php
class ReturningTest extends PHPUnit_Framework_TestCase
{
    protected $obj = null;

    protected function setUp()
    {
        $this->obj = new Returning;
    }

    public function testExample()
    {   
        $this->assertEquals(1, $this->obj->var); …
Run Code Online (Sandbox Code Playgroud)

php phpunit namespaces autoload composer-php

63
推荐指数
4
解决办法
6万
查看次数

您可以在HTML脚本标记上同时使用async和defer属性吗?

我想同时使用下面的JavaScript代码来加载deferasync:

<script defer async src="/js/somescript.js"></script>

由于deferInternet Explorer 5.5+支持,正如您在CanIUse.com上看到的,如果异步不可用,我希望优先使用延迟.Async我认为最好在可用时使用,但在Internet Explorer 10之前不支持.

我的问题是上面的代码是否有效HTML?如果没有,是否有可能使用JavaScript优雅地回退到不可用defer的脚本时创建这种情况async

javascript html5 asynchronous

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

什么是异步javascript函数的简单示例?

我真的在努力学习编写异步JavaScript.能否请您提供一个简单的JavaScript函数示例,它是用纯JavaScript编写的异步(而不是使用Node.js或JQuery)

javascript asynchronous

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

使用数组作为PHP函数中的默认参数

是否可以在PHP函数中使用数组作为默认参数?

我想做以下事情:

$arr = array(1,2,3,4);

function sample($var1, $var2, $var3 = $arr){
    echo $var1.$var2;
    echo print_r($var3);
}

sample('a','b');
// Should still work without the third parameter and default to $arr
Run Code Online (Sandbox Code Playgroud)

php arrays

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

如何使用Apache VirtualHost获取.htaccess文件

我的问题是.htaccess我的本地服务器上的文件没有被读取.VirtualHost文件中的设置似乎始终优先.

我尝试过以下方法:

  • 启用 mod_rewrite
  • 更改AllowOverrideAll但这会导致a HTTP Error 500 Internal server error.我尝试了各种选项,但它总是导致500错误.

我在Ubuntu上使用VirtualHost文件,如下所示:

<VirtualHost *:80>
ServerAdmin webmaster@localhost

DocumentRoot /web/website
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /web/website>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

在我的.htaccess文件中,/web/website我有以下规则(未被阅读):

RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^(.*)$ index.php?/$1 [L]
RewriteCond %{HTTP_USER_AGENT} ^facebookexternalhit
RewriteRule ^(.*)$ ogtags.php?$1 [L,QSA]
ErrorDocument 404 /404
ErrorDocument 401 /401
Run Code Online (Sandbox Code Playgroud)

我尝试过的一件事就是将这些规则直接附加到VirtualHost文件中,但我希望我的 …

.htaccess apache2 virtualhost

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

如何使用Tincr谷歌浏览器扩展程序实时重新加载本地文件

我现在尝试在Windows和Linux(Ubuntu)上使用Tincr Chrome扩展程序,当我在外部编辑器中编辑文件时,它仍然似乎没有在其网站上声明的Live Reloading .Tin.cr网站声称:

您在任何编辑器中进行的任何CSS或JavaScript更改都会在Chrome中重新加载,而无需刷新整个页面

为了进一步解释,我尝试将此扩展程序安装为Chrome中的解压缩扩展程序,并根据Tincr文档中的chrome://chrome/extensions/建议检查开发人员模式.我还尝试直接通过Chrome网上应用店安装此扩展程序.效果是一样的.

在设置Tincr方面,我尝试在没有Web服务器的情况下在本地打开我的文件,使用file://C:/htdocs/file.htmlTincr在其文档中声称它可以自动读取而无需任何设置,而且我也试过通过Apache Web Server打开我的文件localhost例如localhost/file.htmlHttp Web Server按照文档中的建议在Tincr中设置项目类型,但两种方式都无济于事.

在编辑我的本地文件方面,我使用了许多不同的外部编辑器,例如,Ubuntu上的Geany和Windows上的Titanium Studio.

在编辑器中编辑文件后,我在Chrome浏览器中打开了我正在编辑的页面,并启用了Tincr插件设置.但是,在我的文件保存在编辑器中并查看它是否在Chrome中重新加载后,没有任何反应.该文件只是保持不变.同样,重申一下,这种情况在Windows和Linux(Ubuntu)中都有发生.

所以我的问题是这样的:有没有人成功尝试过使用这个扩展程序和外部编辑器,如果是这样,请详细说明让实时重新加载工作的步骤,因为我开始认为这可能是扩展中的错误?

google-chrome-extension google-chrome-devtools

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

使用require.js创建AMD模块

我有以下功能:

function(){
    add: function(x, y){
        return console.log(x + y);
    }
}
Run Code Online (Sandbox Code Playgroud)

我如何define()将此作为AMD(异步模块定义)兼容模块使用require.js,然后在浏览器中使用它?

我正在寻找一个专门用于jsfiddle显示它直接在浏览器中工作的示例.

amd requirejs

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

Node.js用户名和密码验证

我目前正在使用Node.js和构建一个Web应用程序Express.js.

我正在寻找一种方法,在我的主app.js文件中使用用户名和密码进行简单的服务器端身份验证,该文件正在侦听post请求http://www.domain.com/login:

app.js

app.post('/login', function(req, res) {
  // some server-side code for a username and password
}
Run Code Online (Sandbox Code Playgroud)

在客户端,我有一个简单的登录表单,其中包含用户名和密码.此表单将发布到服务器:

的index.html

<form method="post" action="/login">
<input type="text" id="user" name="user" />
<input type="password" id="pass" name="pass" />
<button type="submit">Login</button>
</form>
Run Code Online (Sandbox Code Playgroud)

我希望在使用任何ExpressJS插件的情况下实现这一目标.

编辑:所以我的问题是,如何在ExpressJS和NodeJS中实现简单的用户名和密码验证?

node.js express

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