小编jac*_*cob的帖子

强制输入元素的宽度大小为其内容/值

我正在试图取消输入元素的设计,使其文本看起来像普通/内联文本,并且我已经重置了它可以拥有的每个css属性,但是我无法调整/缩小它的输入宽度内容(input { width:auto; min-width:0; }不起作用).它遵循任意宽度input { width: 10px; },因此显然它的宽度是可调节的.

我看到人们试图用javascript做这件事(答案的小提琴不再适用),所以我想知道我想要的是否可能.

这是一个小提琴.

html css input autosize angular-ui

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

mysql(5.1)插入语法> col_name = value?

在mysql中是否有一种方法可以以更直接将值与其列(而不是)相关联的方式插入table(col_name) values(value)?当一次插入大量值时,将它们列在内联会变得相当混乱并导致错误/错误.

我正在寻找更像UPDATE是语法的东西SET col_name='value'.

我在mysql文档中看到INSERT有以下内容:

INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]
    [INTO] tbl_name
    SET col_name={expr | DEFAULT}, ...
    [ ON DUPLICATE KEY UPDATE
      col_name=expr
        [, col_name=expr] ... ]
Run Code Online (Sandbox Code Playgroud)

但这只是重复:/

mysql syntax insert

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

Node.js + AngularJS + Socket.io:推送控制器中没有的数据

我已经设置我的节点服务器以随机间隔推出一些数据,数据到达客户端/浏览器; 但是,我无法弄清楚如何在我的应用程序的控制器中访问它.

#node.js file: /server.js (truncated for brevity)

var http    = require('http').createServer(handler),//refers to handler()
    fs      = require('fs'),
    io      = require('socket.io').listen(http);
http.listen(8000);

…

io.sockets.on('connection', function (socket) {
    /* DUMMY CODE: this generates fake alerts at random intervals */
    (function loop() {
        var rand = Math…;
        …
        setTimeout(function(){
            …
            var alert = { … };

            socket.emit('alert', {
                "alert": alert
            });//socket.emit()

            loop();
        }, rand);
    }());
});//io.sockets.on()
Run Code Online (Sandbox Code Playgroud)

当我登录alert到终端时,它看起来像这样:

alert: {
    id: 258,
    lat:    -95.20933,
    long:   37.027676,
    neighbourhood: "Downtown",
    time:   //stringified js timestamp …
Run Code Online (Sandbox Code Playgroud)

javascript websocket node.js socket.io angularjs

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

集中式node_modules

我想将我的Node模块存储在一个集中的位置,比如说,/var/http/common/让我的应用程序在不同的位置实时/运行/var/http/www/apps/APP#1_NAME/.

我能够设置server.js使用相对路径的需求require('../../../common/express'),但是从NPM的作者阅读帖子,听起来我正在攻击它,我应该用它npm link为Node创建一个"本地"引用(符号链接到真正的安装).

我首先安装了我的节点模块/var/http/common/,但是当我尝试创建symlink(npm link ../../../common/node_modules/express)时,npm似乎将其视为"全局"安装,并重新安装了express /usr/local/lib/node_modules/express(并创建了一个"本地"符号链接./node_modules/express ->)这不是我预期会发生的事情.这是我真正想要的吗?我应该先使用npm config set prefix吗?

debian node.js npm node-modules

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

MarkerClustererPlus:设置图标颜色/网址,与大小无关

我正在通过MarkerClustererPlus绘制几十万个点,我想基于一些外部属性(不是基于所表示的标记的数量)设置一组群集图标(颜色).

我能想到的唯一方法就是创建多个MarkerClusterer对象并传入一个不同的options对象,但我觉得这样做会有很大的表现.有没有更好的办法?

标记Clusterer Plus具有不同大小的图标,可以缩放以适应.

鉴于上面的图像,我希望139,24和5为黄色,213,25,30和2为红色; 如果可能,通过setOptions更新其样式/选项:
mc.group[0].setOptions({"url": imgPath +lookupThreshold(severity)+ '.svg' });
mc.group[1].setOptions({"url": imgPath +lookupThreshold(severity)+ '.svg' });

PS如果有人感兴趣,我调整了lib,所以群集图标通过提供svg图像并增加options对象中的宽度和高度来缩放到它的大小:

var mcOptions = {
  "styles": [{
    "height": 19,
    "url": img/map/clusters/",
    "width": 19
  },{
    "height": 24,
    "url": img/map/clusters/",
    "width": 24
  }, {…}]
};
for ( var s = mcOptions.styles.length-1; s >= 0; s-- )
{ mcOptions.styles[s].url += lookupThreshold(severity) + '.svg'; }
// lookupThreshold switches severity and returns a string: red, orange, …
Run Code Online (Sandbox Code Playgroud)

然后将以下内容添加到markerclusterer.js:

line 275: this.backgroundSize_ = style.backgroundSize …
Run Code Online (Sandbox Code Playgroud)

javascript markerclusterer

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

AngularJS:事件回调不会在谷歌地图本机地图标记上触发

我已经分叉了AngularUI的uiMap指令,以便将InfoWindow交换为InfoBox并添加MarkerClusters.我对uiMap做了一些大的更新 - > icMap; 最值得注意的是,我将指令逻辑移出控制器,使uiMap成为"主"指令.除了点击原生MapMarker没有打开信息框之外,我几乎所有工作都有效.

认为原因是我没有将click事件正确绑定到本机MapMarker(ic-map.js:163).

在我重新组织uiMap之前,我只是icMapInfoBoxmap.js中添加了一个指令.其公开活动由以下人员注册/触发:

ui-event="{'map-click':'openMarkerInfo(marker)'}"
Run Code Online (Sandbox Code Playgroud)

这被称为openMarkerInfo()在其控制器中定义(从我的回购复制/粘贴:GitHub的要点).

但是,现在当我单击本机MapMarker时,没有任何反应,我在控制台中没有错误(但所有其他事件仍然正常启动).

Original Plunk
Simplified Plunk(删除MarkerClusters)
在两个插件中,问题可能在于ic-map.js(列表中的第一个文件)

map.json是一个数据文件
angular.js,angular-ui.jsinfobox.js是lib文件

编辑我注意到InfoBox.mapundefined; 我猜这与问题有关.

编辑未定义InfoBox.map财产是问题的一部分:手动调用InfoBox.openIC-map.js:189个工程(模板没有被编译,但是这是一个不同的问题),但click事件仍然没有按触发InfoBox.open.此外,模板未包含在内.

已解决:我一直在处理marker一个DOM对象,而不仅仅是一个js对象.很快会发布解决方案.

javascript events google-maps-api-3 angularjs infobox

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

NodeJS/ExpressJS在1个流中发送大量数据的响应

我正在使用本机mongo rest api对应用程序进行原型设计,其中Node返回大约400K的json.我使用以下内容来请求mongo的原生api并返回结果:

http.request(options, function(req)
  {
    req.on('data', function(data)
      {
console.log(data,data.rows);
        response.send( 200, data );
      }
    );
  }
)
.on('error', function(error)
  {
console.log('error\t',error);
    response.send(500, error);
  }
)
.end();
Run Code Online (Sandbox Code Playgroud)

当我http://localhost:8001/api/testdata通过curl点击时,响应是正确的(从console.logcurl接收到的节点控制台输出的内容).但是当我在我的应用程序中通过ajax点击它时,流被...中断,甚至data输出到Node的控制台(终端)是奇数:它有多个EOF,并且Chrome的开发工具中的调用的网络>响应在第一个EOF结束.

另一个奇怪的事情:data看起来像:

{
    "offset": 0,
    "rows": [ … ]
}
Run Code Online (Sandbox Code Playgroud)

但在Node和客户端(角度)都不能引用data.rows(它返回undefined).typeof data回报[object Object].

编辑 curl和angular的请求标头(由Node报告)是:

req.headers: {
  'x-action': '',
  'x-ns': 'test.headends',
  'content-type': 'text/plain;charset=utf-8',
  connection: 'close',
  'content-length': '419585'
}
Run Code Online (Sandbox Code Playgroud)

编辑我直接检查了角度和卷曲中的响应头(而不是来自Node),发现存在分歧(来自curl和angular的相同输出直接而不是来自节点):

access-control-allow-headers: "Origin, X-Requested-With, Content-Type, Accept"
access-control-allow-methods: "OPTIONS,GET,POST,PUT,DELETE"
access-control-allow-origin: "*"
connection: "keep-alive" …
Run Code Online (Sandbox Code Playgroud)

xmlhttprequest mongodb node.js express angularjs

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

AngularUI urlRouterProvider.当使用可选参数进行动态路由时

我正在尝试使用可选参数创建路由; 显然ui.route没有这种能力(即使ngRoute几乎永远存在).所以相反,我已将它们指定为查询参数,并尝试将它们转换为适当的RESTful网址,该网址将针对$ stateParams展开:

在ngRouter语法中,我将指定: /:resource/:collection?/:type?/:index?

在ui.router中,我将其指定为: /:resource?collection&type&index

我试图用一个返回路径的函数动态地翻译它(尝试使用.when()和.rule()):

$urlRouterProvider
.when('' , '/index')
.when('/', '/index')
.when( urlMatcher.source , function convertToREST( $match , $stateParams )
{
    var params = [$match.resource];
    if ( angular.isDefined($match.collection) ) params[1] = $match.collection;
    if ( angular.isDefined($match.type) )       params[2] = $match.type;
    if ( angular.isDefined($match.index) )      params[3] = $match.index;
    var result = '/' + params.join('/');
    return result;
} )
.otherwise( '/404' );
Run Code Online (Sandbox Code Playgroud)

上面导致没有渲染视图(删除第3 .when()和视图渲染就好了).

并手动:

$urlRouterProvider
.when('' , '/index')
.when('/', '/index')
.when( '/:resource?collection' , '/:resource/:collection' )
.otherwise( '/404' );
Run Code Online (Sandbox Code Playgroud)

这显然导致循环迭代.我从ui-router的示例应用程序中获得了这个手动创意: …

angular-ui angular-ui-router

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

AngularJS:过滤重复匹配列表

我有一个由ngRepeat循环的对象列表:

hashes = [
  {
      "type": "foo"
    , …
  }
  , {
      "type": "foo"
    , …
  }
  , {
      "type": "bar"
    , …
  }
]
Run Code Online (Sandbox Code Playgroud)

我想根据type它的值是否与针列表中的项匹配来过滤它们:

types = ['foo','quz'];
Run Code Online (Sandbox Code Playgroud)

所以像

<div ng-repeat="hash in hashes | filter:types"></div>
Run Code Online (Sandbox Code Playgroud)

这是内置到Angular还是我必须编写自定义过滤器?

loops filter angularjs angularjs-ng-repeat

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

从业力中排除scss文件

我希望业力完全忽略/不关心/完全忘记样式文件.

我的webpack配置中有以下内容,这会导致webpack在构建期间不导入文件.

plugins: [
    new webpack.IgnorePlugin(/\.(less|scss)$/), // ignore styles when running specs
    new webpack.IgnorePlugin(/client\/utils/), // ignore polyfills
],
Run Code Online (Sandbox Code Playgroud)

但是,当Karma运行时,它会尝试执行导入,这当然会失败:

Uncaught Error: Cannot find module "./view.scss"

我已经尝试在我的业力配置中添加几乎非常排斥的排列

exclude: [
    {
        pattern: '**/*.less',
        type: 'module',
    },
    {
        pattern: '**/*.scss',
        type: 'module',
    },
]
Run Code Online (Sandbox Code Playgroud)

我尝试了忽略样式(抛出一个错误的开箱即用).

我只是想让它跳过样式文件,因为它们与测试无关,只是浪费时间构建.我不明白这是多么困难.

失败的示例项目

https://github.com/jshado1/fetch-mock-test (对不起,npm install可能有一些额外的包).

运行测试时,您应该收到以下错误:

Uncaught Error: Cannot find module "./test.scss" at webpack:///…/src/client/TestComponent.jsx:3:0
Run Code Online (Sandbox Code Playgroud)

karma-runner karma-mocha webpack webpack-3

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