小编Lem*_*mmy的帖子

History.js在Internet Explorer和pushState问题中的哈希回退

我正在实现一个网站,当新部分通过ajax加载到首页时,使用History.js动态设置其网址.

这看起来效果很好,但是在History.js中创建的URL中的哈希部分存在问题,因为它是Internet Explorer中的后备.

以下是使用jquery创建的页面上的链接示例:

    function connect_browse_buttons(){
    $('.browselink').each(function(){
        $(this).click(function(){
            var action = $(this).attr('name');
            action = action.substring( ('action_browse').length );
            browsetype = action;
            if (isIE){
                // remove data object and title to avoid use of SUIDs by History.js in IE
                History.pushState(null, null, '/public/' + action);
            } else {
                History.pushState({oldurl: History.getState()['url']}, "Example " + action, config.wwwroot + "public/" + action);
            }
            return false;
        });
    });
}
Run Code Online (Sandbox Code Playgroud)

.htaccess文件将任何URL(例如http://example.com/public/category_a)重定向到http://example.com,其中javascript解析url并通过changeState处理程序中的ajax请求加载相应的部分.

javascript检查网址,例如

http://example.com/public/category_a 
Run Code Online (Sandbox Code Playgroud)

AND用于在Internet Explorer中创建的等效后备URL,即

http://example.com/#public/category_a
Run Code Online (Sandbox Code Playgroud)

一切正常 - 所以:

在Firefox中,如果我在站点的根目录http://example.com上打开站点,并按上面的链接点击,则加载内容(在changeState处理程序中),并且URL由History设置. pushState为: …

url jquery internet-explorer history.js pushstate

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

Gerrit工作流程 - 将单个提交推送到主题分支

我想在不影响同一主题分支中的其他提交的情况下将单个提交推送到Gerrit.不幸的是,我没有Gerrit的测试实例来进行实验.

场景: 我已经为项目提供了一个主题分支,正在审核中,其他开发人员已经更新了部分内容.现在我希望在更新之后进行更改.

为此,我在我想编辑的提交中由其他开发人员提取更改,在本地执行交互式rebase以进行我自己的更改,然后推送到Gerrit,确保Change-Id仍然相同.这会将新版本的文件添加到补丁集中以供审阅.

问题: 当我尝试将单个提交推送到Gerrit时,主题分支中的其他提交也被推送,覆盖其他开发人员的更改.

这是我使用的语法:

git push gerrit 3089c9f56542461dce738a9aa17bb743ed36e038:refs/publish/master/my-topic-branch
Run Code Online (Sandbox Code Playgroud)

我假设由于Gerrit创建的依赖项,主题分支中的其他提交也被推送.

这种方法是否会起作用,省略主题分支标题?:

git push gerrit 3089c9f56542461dce738a9aa17bb743ed36e038:refs/publish/master
Run Code Online (Sandbox Code Playgroud)

我之前成功尝试过此方法,推送到特定的变更集:

git push gerrit a95cc0dcd7a8fd3e70b1243aa466a96de08ae731:refs/changes/12345
Run Code Online (Sandbox Code Playgroud)

但是,在再次尝试这个时,我现在得到一个解包错误:

error: unpack failed: error Missing tree 9172313b907b160d15e260d5f7d51689f467b858
Run Code Online (Sandbox Code Playgroud)

相关问题: 当我从Gerrit中提取其他开发人员的更改时,如何确保我已经提取了主题分支中提供的所有文件?如果我在主题分支中选择Gerrit中最顶端的更改,并使用web ui中所述的pull命令,则主题分支中的某些文件似乎在本地更新,但不是全部.我是否需要遍历topic-branch中的每个提交并发出相关的pull命令?

workflow commit gerrit

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

MySql,内连接查询,必须匹配多行

我正在创建一个MySQL查询,我想要检索一个ID,但前提是我在查询中指定的所有行中找到了匹配项.

Table: view_layout_rows

ID    owner    rows
___________________
49    1        2
50    1        2




Table: view_layout_rows_columns

ID    row    columns
___________________
49    1      5
49    2      4
50    1      5
50    2      5



SELECT vlr.id
FROM view_layout_rows vlr
INNER JOIN view_layout_rows_columns vlrc
ON vlr.id = vlrc.id 
WHERE vlr.rows = 2
AND (vlr.owner = 0 OR vlr.owner = 1)
Run Code Online (Sandbox Code Playgroud)

并且应满足以下所有条件:

(vlrc.row = 1 AND vlrc.columns = 5) 
(vlrc.row = 2 AND vlrc.columns = 5)
Run Code Online (Sandbox Code Playgroud)

只返回ID 50.不应该返回49,因为它只满足最后两个条款中的第一个.

我怎么能这样做?(请注意,我之前问过这个问题,但我的要求不清楚.第二次尝试.)提前感谢任何建议.

mysql sql inner-join

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

使用webpack在vuejs中分离模板

我对VueJS感兴趣.我已经看过有关为每个组件定义资源的文档,但我宁愿在我的开发环境中将模板文件与js文件分开.

我正在使用Webpack,所以我认为应该可以将这些单独的资源一起编译以便在运行时使用.

有没有人在配置Webpack方面取得任何成功?我已经尝试使用text-loader来从我的js文件中要求html模板,但是后来的scoped css被忽略了.选择分离css会很好.文档似乎更倾向于使用Browserify来实现这种方法.

templates webpack vue.js

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

Arduino库中的多个定义错误

我正在尝试从Arduino 1.0.5中的https://github.com/janisHD/LightRobot编译lightRobot.ino Arduino草图,但是我在lightRobot库中得到了多个定义错误.我使用的是OS X 10.8.5但在Windows 8中遇到了同样的问题.

这是示例.h和.cpp文件:

BlueToothEvent.h

/*! \file BlueToothEvent.h checks periodically if new data over BT has been received.
*/

#include <Arduino.h>
#include <OrangutanLCD.h>
#include "TimeEvent.h"

#ifndef BLUETOOTH_EVENT_H
#define BLUETOOTH_EVENT_H

#define DATA_WORD_LENGTH 4

/*! \class BlueToothEvent
retrieves and stores the received BT data. The data should come over the serialport, it must be started in "setup".
The struct DataPacket publishes the parsed data for the Statemanager.
*/
class BlueToothEvent : public TimeEvent
{
  public:

  struct DataPacket …
Run Code Online (Sandbox Code Playgroud)

c++ arduino multiple-definition-error

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