我最近一直在使用nodejs并且仍然掌握模块系统,所以如果这是一个显而易见的问题,请道歉.我想要的代码大致如下所示:
a.js(主节点与节点一起运行)
var ClassB = require("./b");
var ClassA = function() {
this.thing = new ClassB();
this.property = 5;
}
var a = new ClassA();
module.exports = a;
Run Code Online (Sandbox Code Playgroud)
b.js
var a = require("./a");
var ClassB = function() {
}
ClassB.prototype.doSomethingLater() {
util.log(a.property);
}
module.exports = ClassB;
Run Code Online (Sandbox Code Playgroud)
我的问题似乎是我无法从ClassB的实例中访问ClassA的实例.
是否有正确/更好的方法来构建模块以实现我想要的?有没有更好的方法在模块之间共享变量?
我有一些javascript来处理我的网站上打开模态弹出窗口,它还将元素的overflow-y属性设置<html>为hidden.在Chrome和IE中,这可以正常工作 - 滚动条隐藏,模态弹出窗口后面的页面保持在相同的滚动位置.当弹出窗口关闭时,overflow-y设置为scroll并且页面处于与之前相同的状态和位置.
但是在Firefox中,只要overflow-y更改为hidden页面滚动位置就会跳到最顶层,因此当弹出窗口关闭时,用户的视图已经改变 - 不太理想.
这个问题可以在这个问题上看到
这种行为有什么解决方案吗?
我有一个angularJS应用程序,配置如下:
$locationProvider.html5Mode(true);
$locationProvider.hashPrefix('!');
Run Code Online (Sandbox Code Playgroud)
所以在现代浏览器中,它与pushstate一起使用没有问题,一个示例URL将是:
http://myapp.com/members
Run Code Online (Sandbox Code Playgroud)
在旧的浏览器中,例如IE9,当我浏览到该URL时,它会按预期重写它:
http://myapp.com/members#!/members
Run Code Online (Sandbox Code Playgroud)
单击此处的任何链接都会使用hashbang方法,也正确:
http://myapp.com/members#!/members/add
Run Code Online (Sandbox Code Playgroud)
然而...
如果我在一个hashbang重写的URL上完全重新加载页面,它将继续将哈希附加到自身.第一次刷新:
http://myapp.com/members#!/members#!/members#!%2Fmembers
Run Code Online (Sandbox Code Playgroud)
..和第二次刷新:
http://myapp.com/members#!/members#!/members#!%2Fmembers#!/members#!%2Fmembers%23!%2Fmembers%23!%2Fmembers
Run Code Online (Sandbox Code Playgroud)
这可能导致这种情况发生了什么?通常它不会发生,因为人们将在应用程序内导航并且角度将处理网址,但进行完全重新加载似乎打破了它.谢谢.
是否可以允许在模型的添加/更改页面上手动编辑自动日期时间字段。这些字段定义为:
post_date = models.DateTimeField(auto_now_add=True)
post_updated = models.DateTimeField(auto_now=True)
Run Code Online (Sandbox Code Playgroud)
我不确定手动覆盖这些将如何工作,自动更新是在数据库级别还是在 django 本身中处理?
我有一个Laravel模型,其中包含各种字段,在数据库中默认为NULL,并且由于遗留原因而无法轻松更改.我想总是将这些作为空字符串返回,例如,当从我的路线返回JSON时.是否有某种"标准"方式以某种方式定义模型中的默认值?
另一种情况可能是某个字段在返回之前总是需要对其进行一些处理,这是否也可以以类似的方式定义?谢谢.
我正在玩Java,我在游戏中为自己的NPC上课.当一个方法与另一个对象发生碰撞时会调用它们:
public void collided_in_to(Entity ent) {
if(ent.equals(game.player)) {
this.speak = "Ouch!";
}
}
Run Code Online (Sandbox Code Playgroud)
我想做的事,这是我想通将是简单的,被设置this.speak到""几秒钟的一定量之后.来自网络背景,我正在寻找相当于Javascripts setTimeout().
我已经尝试过使用各种计时器片段,例如使用Swing计时器,但在这种情况下,似乎每个计时器都会调用相同的public void actionPerformed(ActionEvent e)方法,因此对于不同的事件我有多个计时器无法区分它们.其他人使用内联匿名类,但后来我无法将非最终参数传递给它.
对于这个用例,我是否缺少一些东西,我希望在一段时间后发生非常小的简单事情?(称为实例方法,变量集等)
谢谢!
希望简单的Django在这里提问.如果没有使用长链的Q对象一起使用,有一种简单的方法来查询类似的东西:
item = Item.objects.filter(name__startswith='[a digit here]')
Run Code Online (Sandbox Code Playgroud)
谢谢!
django ×2
javascript ×2
angularjs ×1
css ×1
django-admin ×1
django-forms ×1
java ×1
laravel ×1
laravel-4 ×1
module ×1
node.js ×1
overflow ×1
php ×1
require ×1