刚开始使用browserify,但我找不到如何让它溢出缩小输出的文档.
所以我看起来像:
$> browserify main.js > bundle.js --minified
Run Code Online (Sandbox Code Playgroud) 如何在每个循环中访问父@index值?
尝试以下方法:
{{#each company}}
{{#each employee}}
{{../@index}} // how to access company index here?
{{/each}}
{{/each}}
Run Code Online (Sandbox Code Playgroud)
这导致错误:
期待'身份',获得'数据'
尝试恢复使用heroku pgbackups -tool进行的数据库备份.
我通过公开网址下载备份:
$ heroku pgbackups:url 'backup-name'
Run Code Online (Sandbox Code Playgroud)
创建数据库:
$ createdb 'dbname' -U postgres
Run Code Online (Sandbox Code Playgroud)
并尝试从*.dump文件恢复:
$ psql -U postgres -d 'dbname' -f *.dump
Run Code Online (Sandbox Code Playgroud)
我最终遇到了以下类型的语法错误:
ERROR: syntax error at or near "PGDMP"
...
ERROR: invalid byte sequence for encoding "UTF8": 0x9d
HINT: This error can also happen if the byte sequence does not match the encoding expected by the server, which is controlled by "client_encoding"
Run Code Online (Sandbox Code Playgroud)
好的,所以这与编码有关 - 但是我如何解决?
config/application.rb和我的postgres服务器都将编码设置为UTF-8.database.yml配置了sqlite(尚未涉及生产配置).Gemfile简单地说:
gem 'pg'
Run Code Online (Sandbox Code Playgroud) 我正在尝试用Twitter的bootstrap实现模态加载对话框.我目前的尝试是:
$(document).ready(function () {
$('#loading_dialog')
.ajaxStart(function () {
$(this).modal('show');
})
.ajaxStop(function () {
$(this).modal('hide');
});
});
Run Code Online (Sandbox Code Playgroud)
问题是对话框不会关闭.
计算一系列无符号整数中偶数的最简单方法是什么?
例如:如果范围是[0 ... 4]那么答案是3(0,2,4)
我很难想出任何简单的方法.我提出的唯一解决方案涉及几个if语句.是否有一行简单的代码可以在没有if语句或三元运算符的情况下执行此操作?
我正在尝试在集合上的fetch()之后执行基本的render()(Backbone 0.9.2):
var ProjectListView = Backbone.View.extend({
el: $('#container'),
initialize: function () {
this.collection = new ProjectsCollection();
this.collection.bind("change", _.bind(this.render, this));
this.collection.fetch({ success: function () { console.log("collection fetched"); } });
...
},
render: function () {
console.log("rendered");
...
Run Code Online (Sandbox Code Playgroud)
打印出新的View实例:
collection fetched
Run Code Online (Sandbox Code Playgroud)
因此,在fetch()之后永远不会调用render().我在这做错了什么?没有例外.
如何在骨干中调试这些东西的任何提示?
PS.考虑到SO上的问题数量,似乎这个特征记录很差.
我开始想知道使用空格来缩进html文档的总体影响是什么.
为什么不简单地使用制表符缩进?这不是更具成本效益:1 char(\ t)与示例4 chars(空格)?
我没有尝试过将asp.net页面转换为使用标签并比较渲染标记的大小.通过仅替换一个局部视图的空白区域,可以将22kb大小的页面减少到19,4kb - >减少12%.更改所有缩进,页面最终分配164kb - 减少24%!(使用chrome dev工具和Fiddler进行验证)
我的推理是否合理?标签是否应主要用于缩进HTML?是否有任何理由使用空格(例如与异国情调的浏览器兼容)?
PS.Stackoverflow似乎也使用空格.将SO主页面转换为使用标签可减少9%.这是有效的观察吗?如果是这样,为什么他们没有使用标签?
我正在尝试使用模块组织您的应用程序(require.js我很难理解路由的工作原理.
我不能让简单的绑定工作索引:
// Filename: router.js
define([
'jquery',
'underscore',
'backbone',
'views/projects/list'
], function ($, _, Backbone, ProjectListView) {
var AppRouter = Backbone.Router.extend({
routes: {
// Define some URL routes
'': 'index'
}
});
var initialize = function () {
var app_router = new AppRouter();
app_router.on('index', function () {
alert("index"); // this never gets called
});
Backbone.history.start();
return app_router;
};
return {
initialize: initialize
};
});
Run Code Online (Sandbox Code Playgroud)
加载页面时没有任何反应.但这有效:
// Filename: router.js
define([
'jquery',
'underscore',
'backbone',
'views/projects/list'
], function ($, _, Backbone, …
Run Code Online (Sandbox Code Playgroud) 我想弄清楚以下情况:
让我们说我有两个观点:一个用于查看项目,另一个用于购买它们.问题在于购买视图是用于查看的子视图.
对于路由,我有:
var MyRouter = Backbone.Router.extend({
routes: {
'item/:id': 'viewRoute',
'item/:id/buy': 'buyRoute'
}
});
var router = new MyRouter;
router.on("route:viewRoute", function() {
// initialize main view
App.mainview = new ViewItemView();
});
router.on("route:buyRoute", function() {
// initialize sub view
App.subview = new BuyItemView();
});
Run Code Online (Sandbox Code Playgroud)
现在,如果用户刷新页面buyRoute
并被触发,但现在没有主视图.处理这个问题的最佳解决方案是什么?
我最近浏览了js代码,以下语法不断出现:
var foo = bar.bi = function() {...}
Run Code Online (Sandbox Code Playgroud)
这对我来说是不熟悉的语法.是否只为同一个函数定义两个名称?如果是这样,为什么不将其定义为bar.bi = function()
?
是否可以为listenTo回调绑定函数参数?
我到现在为我添加了一个包装方法'myHandler',我想摆脱它:
// Basic marionette layout
var view = Marionette.Layout.extend({
initialize: function() {
// wrapping view logic inside a custom object
this.controller = new MyViewController();
},
// creates a sub view and adds event handlers
someFunc: function() {
var subView = new MySubView();
// HERE: how to bind args for callback?
this.listenTo(subView, "myEvent", this.myHandler, this);
},
// this is a dummy wrapper that I want to remove
myHandler: function(e) {
this.controller.handleIt(this, e);
},
Run Code Online (Sandbox Code Playgroud)
我想做的是:
someFunc: function() {
var subView = …
Run Code Online (Sandbox Code Playgroud) 这适用于第一场比赛:
var attributeValue = $({selector}).data("myAttribute");
Run Code Online (Sandbox Code Playgroud)
但是如果我想获取所有元素选择器匹配的值,我会执行以下操作:
var attributes = [];
$.each($({selector})), function(k,v) { attributes.push($(v).data("myAttribute")); });
Run Code Online (Sandbox Code Playgroud)
这感觉很愚蠢.是否有更简单的方法来获取所有元素的数据?
是否存在以下安全实现:
Guid original = Guid.NewGuid();
Guid inverted = MysteryImplementation(original, salt); // salt is some sort of input
Guid shouldBeOriginal = MysteryImplementation(inverted, salt);
Assert.AreEqual(original, shouldBeOriginal, "MysteryImplementation did no work");
编辑:
由于这个被投票(虽然我有点不确定为什么),我认为需要更多的背景:
在远处的某个地方,有一个应用程序,其中主键存储为GUID.在此应用程序中,这些GUID向Web客户端公开.
在我追求改善现状的过程中,我有一个想法,即将这些GUID与用户会话数据进行映射,以降低主键意外/恶意泄漏的风险.映射这些GUID具有额外的好处,它还可以更容易地实现GUID引用的那些对象的工作副本.
这就是我决定开始寻找"安全"方式来映射GUID的原因.
回答评论:
-Mapping应该与所有其他GUID相比保留全局唯一性(我不希望那些映射的GUID与现有的GUID冲突).
- 在此上下文中的"安全"意味着在不知道密码密钥(典型的加密请求,我认为转换映射的GUID应该具有规范化分布)的情况下,不可能找出原始GUID.
javascript ×6
backbone.js ×4
ajax ×1
algorithm ×1
browserify ×1
c ×1
c# ×1
function ×1
heroku ×1
html ×1
indentation ×1
jquery ×1
marionette ×1
math ×1
modal-dialog ×1
node.js ×1
optimization ×1
overhead ×1
postgresql ×1
syntax ×1