小编Rad*_*ski的帖子

JPG 与压缩 JPG 与 WEBP - 为什么 WEBP 不是最小的?

我有这张图片(我在 SGS 9 plus 上拍摄的照片):未压缩的 JPG 图像。它的大小为 4032 x 3024,重量约为 3MB。我用TinyJPG Compressor压缩了它,它的重量是1.3MB。对于 PNG 图像,我使用了Online-Convert,我看到 webp 图像甚至比使用TinyPNG压缩的图像小得多。我期待类似的东西,尤其是我读了一篇文章JPG 到 WebP - 比较压缩大小,其中 WEBP 比压缩的 JPG 小得多。但是当我在各种在线图片转换工具中将我的JPG转换为WEBP格式时,我看到1.5-2MB大小,所以文件比我压缩的 JPG 大。我错过了什么吗?WEBP应该不会比压缩后的JPG小很多吧?预先感谢您的每一个答案。

jpeg image image-conversion image-compression webp

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

组件启动时,$ translate.instant不会转换AngularJS组件中的值

使用Angular Translate$ translate.instant()方法,我构建了AngularJS的select组件,并在语言之间自动切换:

<translated-select
  elements="$ctrl.values"
  current-value="$ctrl.value"
  on-change="$ctrl.setValue(value)"
></translated-select>
{{ $ctrl.value }}
<hr>
<button ng-click="$ctrl.switchToPolish()">
  Switch to polish
</button>
<button ng-click="$ctrl.switchToEnglish()">
  Switch to english
</button>
Run Code Online (Sandbox Code Playgroud)

正如您在Plunker上看到的那样:Angular JS选择自动翻译.问题是它select在我选择第二个选项之前将s选项显示为undefined.然后一切正常,我可以在英语和波兰语的翻译选项之间切换.我甚至尝试用$onChanges挂钩等待第一次更改,如果发生$digest了更改,请运行$timeout:

this.$onChanges = function (changes) {
  if (changes.elements) {
    $timeout(function () {
      this.values = changes.elements.currentValue;
    }.bind(this));
  }
  if (changes.currentValue) {
    $timeout(function () {
      this.value = changes.currentValue.currentValue;
    }.bind(this));
  }
}
Run Code Online (Sandbox Code Playgroud)

但是一次又一次,我必须在select中选择第二个选项才能使其正常工作.我错过了什么吗?如果有人会帮助我,我将不胜感激,谢谢你.

javascript internationalization angularjs angular-translate angularjs-components

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

如何使用postgres_fdw连接到本地主机?

我的想法是,我有一个名为的本地数据库northwind,并且postgres_fdw我想与另一个test在localhost上命名的数据库连接(远程连接模拟,例如在数据库中的表被更新时,在其他数据库中执行某些操作,例如保存到历史记录等。 )。所以我打开了psql控制台并输入:

CREATE SERVER app_db 
FOREIGN DATA WRAPPER postgres_fdw 
OPTIONS (dbname 'test', host 'localhost:5432');
Run Code Online (Sandbox Code Playgroud)

正如我在“查看外部数据包装器”链接中所发现的。接下来,我还将按照本教程进行操作:

CREATE USER MAPPING for postgres
SERVER app_db 
OPTIONS (user 'postgres', password 'postgres');
Run Code Online (Sandbox Code Playgroud)

(我假设用户名和密码应该与我在Hibernate中访问数据库时所使用的密码相同,并且在本current_user教程中postgres,就本教程而言,这是我的PgAdmin III中存在的唯一角色)。然后我创建了外表:

CREATE FOREIGN TABLE groups
(
  id serial NOT NULL,
  name character varying(255) NOT NULL,
  version integer DEFAULT 0
)
 SERVER app_db OPTIONS (table_name 'groups')
Run Code Online (Sandbox Code Playgroud)

没关系,我可以schema/foreign tables在PgAdmin III中找到它。但是当我尝试时,SELECT * FROM groups我得到了:

********** ERROR**********

ERROR: could not …
Run Code Online (Sandbox Code Playgroud)

database postgresql pgadmin foreign-data-wrapper postgresql-9.3

6
推荐指数
2
解决办法
5216
查看次数

SQL COUNT()函数和LEFT OUTER JOIN

我有两个表,用户和部门.我想拥有表,其中有两列:第一个是部门名称,第二个是计数 - 分配给该部门的用户数量.我有这段代码:

SELECT department_name as 'deptName', 
       COUNT(users.department_id) as 'userCount' 
FROM departments
LEFT OUTER JOIN users
ON departments.id = users.department_id 
GROUP BY 'deptName'
Run Code Online (Sandbox Code Playgroud)

部门的表格列是:

 integer id PK

 varchar(20) department_name
Run Code Online (Sandbox Code Playgroud)

用户的表列是:

 integer id PK

 varchar(20) name

 varchar(20) surname

 int department_id FK
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

现在我有2个部门,输出应该是2行,第一个是计数8,第二个是计数1. 但我只看到一行,所有计数(9). 我使用安装了XAMPP的MySQL.

mysql sql database count left-join

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

有没有办法让HTML代码独立于CSS类名的变化?

我正在使用Twitter Bootstrap 3,但现在Twitter Bootstrap 4即将推出.而新Twitter Booststrap 配备了一些变化,如重命名.table-condensed.table-sm为例子.为了将来可能从当前版本迁移到未来版本,有没有办法使HTML代码独立于CSS类名称的更改?例如,如果我有.table-condensed类,有没有办法创建自己的类table-small并从现有Twitter Bootstrap的类创建它table-condensed?像(伪代码)的东西:

.table-small {
    join(".table-condensed")
}
Run Code Online (Sandbox Code Playgroud)

我只使用纯CSS到这一刻(我偶尔是前端开发者而不是全栈:)),如果有人会回答我,如果这个东西甚至可能以某种方式,也许有预处理器或类似的东西,我会非常感谢 - 提前谢谢!

html css twitter-bootstrap-3 twitter-bootstrap-4 bootstrap-4

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

无法实例化[org.thymeleaf.templateresolver.ServletContextTemplateResolver]:找不到默认构造函数

我想将Spring 4与Thymeleaf集成,但我得到了:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'templateResolver' defined in ServletContext resource [/WEB-INF/mvc-dispatcher-servlet.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.thymeleaf.templateresolver.ServletContextTemplateResolver]: No default constructor found; nested exception is java.lang.NoSuchMethodException: org.thymeleaf.templateresolver.ServletContextTemplateResolver.<init>()
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1105)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1050)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:510)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:772)
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538)
    at org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:667)
    at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:633)
    at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:681)
    at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:552)
    at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:493)
    at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:136)
    at javax.servlet.GenericServlet.init(GenericServlet.java:158)
    at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1231)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1144)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1031)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4914)
    at …
Run Code Online (Sandbox Code Playgroud)

java spring spring-mvc maven thymeleaf

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

测试JS方法是否使用QUnit抛出RangeError

我用QUnit库做了一些Javascript单元测试,然后我想测试方法是否抛出RangeError.它以这种方式完成:

QUnit.test("Resolve slide animation from left", function( assert ) {
var myOwnCreator = new MyOwnCreator();
assert.equal(myOwnCreator.resolveAnimationType("slideSide", "show", "left"),
  "slide-left-in");
assert.equal(myOwnCreator.resolveAnimationType("slideSide", "hide", "left"),
  "slide-left-out");
assert.throws(myOwnCreator.resolveAnimationType("slideSide", "hide"), 
  new RangeError(),
  " If animation type is 'slideSide', you have to provide correct direction" 
  + "to identify animation properly, direction cannot be 'undefined'");
});
Run Code Online (Sandbox Code Playgroud)

第一次和第二次测试通过,因为通过函数(,, slide -...")解析的动画类是可以的.但第三次测试死了:

Died on test #3     at file...
Run Code Online (Sandbox Code Playgroud)

因为它抛出RangeError.它可以抛出RangeError,但我不明白如何在单元测试中捕获它,获取,确定"信息.如果我理解QUnit文档:QUnit抛出文档

我做的一切都好:我传递抛出错误的函数,预期错误的实例和预期的消息.我有人会决定帮助我,我会很高兴 - 提前谢谢你.

javascript unit-testing assert qunit throws

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

Angular UI Bootstrap Datepicker - 为模板添加自定义功能

我想通过为单元格添加颜色来指定Angular UI日期单元格的颜色,因此我使用以下内容覆盖默认模板:

<!-- things from pasted default template, here I change something -->
<!-- btn-danger instead btn-info for clicked date, test if I can change anything-->
<!-- call to function from my own controller-->
<button type="button" style="width:100%;" class="btn btn-default btn-sm"
    ng-class="{'btn-danger': dt.selected, active: isActive(dt)}" ng-click="select(dt.date)"
    ng-disabled="dt.disabled" tabindex="-1">
    <span ng-class="{'text-muted': dt.secondary, 'text-info': dt.current,
    'text-success': hasEventsCreatedByUser(dt)}">
    {{dt.label}}</span>
</button>
Run Code Online (Sandbox Code Playgroud)

那是(目前)我的功能 testController

$scope.hasEventsCreatedByUser = function(date){
            return true;
};
Run Code Online (Sandbox Code Playgroud)

从更改btn-infobtn-danger非常容易,它只是粘贴另一个类:)但是我不能在我的控制器中调用方法 - 是否有任何解决方案在Angular UI模板中启用我的控制器调用函数或者我必须以某种方式覆盖默认值DatepickerController

更详细的描述:用户可以创建具有指定日期的事件.例如,这个想法是使用创建绿色的日期创建单元格

模拟解决方案发现:

我使用"miniController",我只在按钮上添加:

<button ng-controller="miniController" …
Run Code Online (Sandbox Code Playgroud)

datepicker angularjs angular-ui angular-ui-bootstrap twitter-bootstrap-3

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

使用 AngularJS 登录后,当授权标头不存在时,Spring Security 不会抛出错误

我通过将 Authorization 标头添加到 $http 标头来遵循Spring Security 和 Angular JS进行 HTTP 基本身份验证:

const headers = {
    authorization: "Basic " + btoa(this.login + ":" + this.password)
};

this._$http.get("user",
    {
        headers: headers,
    })
    .then(
        this.showUser.bind(this),
        this.showError.bind(this)
    );
Run Code Online (Sandbox Code Playgroud)

在里面showUser我重定向到jobs组件$location

this._$location.path("jobs");
Run Code Online (Sandbox Code Playgroud)

jobs组件内部,我加载可用的作业:

public $onInit() {
    this._$http.get("jobs").then(function(response) {
        this.jobs = response.data;
    }.bind(this));
    this.authenticated = this._loginService.isLogged();
}
Run Code Online (Sandbox Code Playgroud)

故意未经授权标头,以证明一切正常。我认为它应该被Spring SecuritywithHTTP 401 Unauthorized或类似的东西放弃,但它在没有授权标头的情况下工作。当我从另一个浏览器窗口注销并重新加载作业时,一切正常,作业未加载。但我认为(并且我希望)授权数据(HTTP Basic)应该出现在每个请求中。这是我的安全配置:

protected void configure(HttpSecurity http) throws Exception {
    http
        .formLogin()
        .successHandler(
            new …
Run Code Online (Sandbox Code Playgroud)

javascript spring spring-mvc spring-security angularjs

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

JQuery UI 工具提示 - 工具提示的位置错误(位于页面左侧而不是按钮周围)

我有这段代码:

<!DOCTYPE html>
<HTML>
<HEAD>
    <TITLE>My first HTML document</TITLE>
    <script type="text/javascript" src="https://code.jquery.com/jquery-1.10.1.min.js"></script>
<script type="text/javascript" src="https://code.jquery.com/ui/1.10.3/jquery-ui.min.js"></script>
<link rel="https://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">

<script>

    $(document).ready(function(){
        $(".has-tooltip").each(function(){
            $(this).tooltip({content: "test", items: "button"});
        });
    });

</script>
</HEAD>
<BODY>
    <BUTTON class="has-tooltip" style="margin-left: 100px;">First</BUTTON>
    <BUTTON class="has-tooltip" style="margin-left: 200px;">Second</BUTTON>

</BODY>
</HTML>
Run Code Online (Sandbox Code Playgroud)

工具提示完全错误 - 它应该以 jQuery UI 的样式出现,但它没有,而且位置错误 - 即使对于具有较大边距的按钮,它也会出现在屏幕的左侧(正如我所说,没有任何样式,它看起来像纯文本),即使将 ,,track" 属性设置为 ,,true" 它也不会完全跟随光标,但仍然出现在页面的左侧,并且当我移动光标时会移动一点。我认为这是非常简单的示例(该代码是我工作中发生的简化问题),我看不出我做错了什么。如果有人帮助我,我会很高兴 - 提前谢谢你。

PS 片段,这与我在浏览器中得到的行为完全相同:

<!DOCTYPE html>
<HTML>
<HEAD>
    <TITLE>My first HTML document</TITLE>
    <script type="text/javascript" src="https://code.jquery.com/jquery-1.10.1.min.js"></script>
<script type="text/javascript" src="https://code.jquery.com/ui/1.10.3/jquery-ui.min.js"></script>
<link rel="https://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">

<script>

    $(document).ready(function(){
        $(".has-tooltip").each(function(){
            $(this).tooltip({content: "test", items: "button"});
        });
    }); …
Run Code Online (Sandbox Code Playgroud)

javascript jquery jquery-ui tooltip jquery-ui-tooltip

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

如何使用Restangular POST对象?

我想用Angular JS和Restangular将对象发送到Spring Controller.这就是我尝试这样做的方式:

var scoreTO = {
    score: parseFloat($scope.score.score),
    percentage: parseFloat($scope.score.percentage),
    date: (new Date()).getTime()
}
Restangular.one("scores").post(scoreTO);
Run Code Online (Sandbox Code Playgroud)

有运输对象:

public class ScoreTO implements Serializable{
private double score;
private double percentage;
private long date;
public ScoreTO(){}
public ScoreTO(double score, double percentage, long date){
    this.score = score; this.percentage = percentage; this.date=date;
}

public double getScore() {
    return score;
}

public void setScore(double score) {
    this.score = score;
}

public double getPercentage() {
    return percentage;
}

public void setPercentage(double percentage) {
    this.percentage = percentage;
} …
Run Code Online (Sandbox Code Playgroud)

javascript spring controller angularjs restangular

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

在连接和缩小过程中,请勿缩小已缩小的文件

我有一个gulp任务,它可以缩小CSS文件并将它们连接到一个文件:

gulp.task('minify-css', function() {
'use strict';
var pathsToMinifyAndConcat = [
    'css/index.css'
];

var pathsToConcatOnly = [
    'lib/css/font-awesome-4.3.0/font-awesome.min.css'
];

var minifyFiles = require('gulp-cssnano');
var concatAllFilesToOneFile = require('gulp-concat');
return gulp.src(
        []
            .concat(pathsToMinifyAndConcat)
            .concat(pathsToConcatOnly)
    )
    .pipe(minifyFiles())
    .pipe(concatAllFilesToOneFile('application.min.css'))
    .pipe(gulp.dest('dist'));
});
Run Code Online (Sandbox Code Playgroud)

但是,如果某些文件已经缩小(font-awesome.min.css例如),则不应再次缩小 - 它应该只是连接,并且应该从缩小过程中省略.有没有办法在没有hacky解决方案的情况下做到这一点(我不想使用我无法完全理解的解决方案 - 而且我很擅长吞咽)保留文件顺序?我找到了一个插件来在管道中的任何一点添加src文件:gulp-add-src,但它似乎暂时无效.

minify bundling-and-minification gulp gulp-concat

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

Git - 可以添加标签并将其作为提交吗?正如Mercurial一样

当我使用Mercurial时,我曾经将标记作为提交 - 至少在TortoiseHG中,它在添加标记时创建了一个提交.当我尝试使用Git时,我很失望 - 它没有为标记创建提交,而且 - 当我从Intellij IDEA提交时,我必须选中一个复选框来将标记提交到存储库.是否可以在Git中添加标签,并将其作为提交,与Mercurial完全相同?非常感谢你的每一个答案.

git mercurial dvcs git-tag

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