- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 Rendr 应用程序的 Controller 中收到 500 ReferenceError: localStorage is not Defined
。我尝试从 localStorage 获取我的授权 token ,并将其设置为 header ,然后再获取规范。我也尝试过 window.localStorage 但后来我得到 window is not Defined。我无权访问 Controller 级别的窗口对象吗?如果没有,我将如何从 localStorage 获取。
这是我的 Controller 代码。
module.exports = {
show: function(params, callback) {
var spec = {
model: {
model: 'Company', params: { name: params.id }
}
};
var options = {},
Authorization = localStorage.getItem('Authorization');
options.header = {
"Authorization": Authorization
}
this.app.fetch(spec, options, function (err, results) {
// return if there is an error fetching the user
if (err) return callback(err);
// set the title of the page to the users name
this.app.set('title', results.model.get('name'));
// render the page with the results from the fetch
callback(null, results);
}.bind(this));
}
};
最佳答案
欢迎来到 Rendr :-)
Rendr 是同构(或“通用”),这意味着它的很多代码都在服务器和浏览器中运行。如果您有只想在浏览器上运行的代码,有两种方法可以实现这一点:
在 View 中,有一个名为 postRender
的自定义方法 - 该方法不在服务器上运行,而仅在浏览器上运行。这是放置所有浏览器特定代码的标准位置。缺点是它在页面渲染后运行。
您可以将代码包装在 if (window !== 'undefined') {...}
中,以确保它仅在浏览器中运行。缺点是它永远不会在服务器上运行。
在我们的 Rendr 应用程序中,我们使用了一些本地存储,并且必须将其插入基本模板的最顶部。这有点奇怪,因为本地存储(浏览器具有持久性)的概念与同构应用程序(服务器和浏览器可以相同)的概念相冲突。所以他们不能很好地协同工作。
关于javascript - rendr Controller 中未定义 localStorage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33458238/
我在 Rendr 应用程序的 Controller 中收到 500 ReferenceError: localStorage is not Defined 。我尝试从 localStorage 获取我
我正在使用 Qtextdocument 生成报告,我以编程方式准备了一个表字符串作为 html 字符串,但是当我渲染它时,边框没有显示(图 2) 在浏览器中我得到(图片 1) 但在我的 Qt 应用程序
假设我正在构建一个博客,其中主页呈现一个博客文章列表。我的问题是如何将模型传递给每个子帖 subview ? 我有一个遍历集合的 index.hbs {{#forEach models}} {
看起来 Backbone.Marionette View 为事件等操作 DOM,所以我猜这不像更改基类引用那样微不足道,例如Backbone.View 到 BaseView。 有没有人解决过这个问题?
我尝试使用rendr(客户端和服务器中的 Backbone )创建一个web应用程序并尝试实现一些单元测试。 有没有办法在 Mocha 中运行集合获取单元测试?我想使用 sinon-chai 来模拟
我想知道是否有人一直在使用 AirBnB Rendr,它是否稳定且可以用于商业项目,或者它是否仍在发生很大变化? 我正在开发一个可以同时运行客户端和基于服务器的网站,这意味着我需要能够呈现基于服务器和
我已经构建并运行了 Rendr's example apps在 Ubuntu 13.10 上使用 Node v0.8.6。当我点击 Repos 或 Users 链接时,我收到 HTTP 502 - B
我是一名优秀的程序员,十分优秀!