我是一名JQuery程序员,希望在我的下一个项目中使用AngularJS.在阅读了关于如何"思考Angular"而不是包含和使用JQuery的优秀答案后,我想知道使用JQuery + Angular有哪些好的用例.我想对我的Angular编程带来一点点熟悉.
从Stackoverflow帖子引用:
"最重要的是:在解决方案时,首先"在AngularJS中思考";如果你想不出解决方案,请问社区;如果完全没有简单的解决方案,那么随时可以找到jQuery "
我什么时候应该找到JQuery?
我有一个简单的Grails应用程序,需要在用户会话期间(使用界面时)多次定期调用外部Web服务.
我想缓存这个Web服务响应,但是服务的结果每隔几天就会发生变化,所以我想将它缓存一小段时间(也许每天刷新一次).
Grails缓存插件似乎不支持"生存时间"实现,所以我一直在探索一些可能的解决方案.我想知道什么插件或程序解决方案最能解决这个问题.
例:
BuildConfig.groovy
plugins{
compile ':cache:1.0.0'
}
Run Code Online (Sandbox Code Playgroud)
MyController.groovy
def getItems(){
def items = MyService.getItems()
[items: items]
}
Run Code Online (Sandbox Code Playgroud)
MyService.groovy
@Cacheable("itemsCache")
class MyService {
def getItems() {
def results
//expensive external web service call
return results
}
}
Run Code Online (Sandbox Code Playgroud)
UPDATE
有很多不错的选择.我决定采用Burt建议的插件方法.我已经包含了一个示例答案,对上面的代码示例进行了微小的更改,以帮助其他人想要做类似的事情.此配置在24小时后使缓存失效.
BuildConfig.groovy
plugins{
compile ':cache:1.1.7'
compile ':cache-ehcache:1.0.1'
}
Run Code Online (Sandbox Code Playgroud)
Config.groovy中
grails.cache.config = {
defaultCache {
maxElementsInMemory 10000
eternal false
timeToIdleSeconds 86400
timeToLiveSeconds 86400
overflowToDisk false
maxElementsOnDisk 0
diskPersistent false
diskExpiryThreadIntervalSeconds 120
memoryStoreEvictionPolicy 'LRU'
}
}
Run Code Online (Sandbox Code Playgroud) 我在我的网络应用程序中有一个工作自动完成字段,我正在寻找一种方法来增加字段的可用性,当使用箭头键向下滚动可用选项时(在输入后)以某种方式自动跳过类别字段部分搜索词).
例如,如果用户开始键入"an",则自动完成将显示两个类别,每个类别中包含项目.用户想要在"人物"下选择列表中的一个项目.他们使用箭头键向下移动列表.目前,此代码将结果中的类别作为列表项插入.使用箭头键时,必须移动它们才能突出显示并选择结果.应用程序可以自动跳过这些类别标题吗?
$.widget( "custom.catcomplete", $.ui.autocomplete, {
_renderMenu: function( ul, items ) {
var self = this,
currentCategory = "";
$.each( items, function( index, item ) {
if ( item.category != currentCategory ) {
ul.append( "<li class='ui-menu-item ui-category'>" + item.category + "</li>" );
currentCategory = item.category;
}
self._renderItem( ul, item );
});
}
});
var data = [
{ label: "annk K12", category: "Products" },
{ label: "annttop C13", category: "Products" },
{ label: "anders andersson", category: "People" },
{ label: …Run Code Online (Sandbox Code Playgroud) 我正在尝试显示使用其他公司的API获得的对象数组中的数据,但是当我尝试使用foreach循环时遇到错误.
我正在使用Dumper来显示数组中的所有内容.
print Dumper($object);
Run Code Online (Sandbox Code Playgroud)
自卸车的部分输出:
'enable_dha_thresholds' => 'false',
'members' => [
bless( {
'ipv4addr' => '192.168.1.67',
'name' => 'name.something.com'
}, 'Something::Network::Member' ),
bless( {
'ipv4addr' => '192.168.1.68',
'name' => 'name.something.com'
}, 'Something::Network::Member' )
],
'comment' => 'This is a comment',
我正在尝试提取似乎是双数组的"成员":
//this works
print $members->enable_dha_thresholds();
//this works
print $members[0][0]->ipv4addr;
//does not work
foreach my $member ($members[0]){
print "IP". $member->ipv4addr()."\n";
}
Run Code Online (Sandbox Code Playgroud)
我收到此错误:无法在./script.pl第12行的未填充引用上调用方法"ipv4addr".
我不确定我是否完全理解Perl中的"祝福"与"不完美",因为我不熟悉该语言.
我正在研究Grails应用程序,并希望与自定义单点登录服务集成(不是CAS,但类似).我正在努力寻找我需要定制的所有部分才能实现这一目标.有人可以向我解释一下我需要用什么来完成这个工作吗?我已经阅读了插件上的文档,但它假设我知道要覆盖哪些bean以及放置所有需要的文件的位置.
根据我在每一点下面的研究,我已经阻止了我认为需要做的事情.
运营顺序
1-用户请求安全内容(目前应用程序中的所有内容都是安全的)
我相信这个设置在Config.groovy文件中:
grails.plugins.springsecurity.rejectIfNoRule = true
grails.plugins.springsecurity.securityConfigType = "InterceptUrlMap"
grails.plugins.springsecurity.interceptUrlMap = [
'/**':['ROLE_ADMIN']
]
Run Code Online (Sandbox Code Playgroud)
2- Spring Security检查用户是否在身份验证服务提供的cookie中设置了特定值
我猜我需要创建一个身份验证过滤器,但我不知道它放在哪里或它应该是什么样子.
3- Spring安全性检查cookie值并根据自定义服务对其进行验证(通过HTTP POST)
从一些研究中,我认为我需要使用PreAuthenticatedProcessingFilter,但我无法找到任何如何做到这一点的例子.
4-自定义服务返回一系列名称/值对,然后需要在本地应用程序数据库中创建用户(或者如果用户的数据已经在数据库中,则更新"lastLoggedIn"的时间戳)
我相信这是在与3号相同的PreAuthenticatedProcessingFilter或GrailsUserDetailsService中完成的
5-用户的身份验证在会话中缓存一段时间(6-8小时),因此每次用户请求新资源时都不需要对SSO服务进行重新验证.
我不确定这是否是内在完成的事情,或者我是否需要添加代码来执行此操作(并且还设置会话超时)
我有一些内容在包含弹出窗口的网页上动态加载.出于这个原因,我必须将它们绑定到身体,以便它们加载并正确显示.
当用户点击弹出窗口或其他弹出窗口触发器时,我想找到隐藏弹出窗口的方法.
我发现如果我"隐藏"popover,popover确实隐藏了但元素仍保留在DOM中.这意味着popover中的活动链接仍然是"可点击的".
如果我改为破坏弹出窗口,它会隐藏,但如果单击则无法重新激活.隐藏弹出窗口的唯一可靠方法是使用"切换".这增加了确定隐藏哪些弹出窗口的复杂性.
请使用所有这些代码查看此JSFiddle.
HTML
<a href="#" data-toggle="popover" data-original-title="" data-content="<a href='http://www.yahoo.com'>http://www.yahoo.com</a>" class="some-popover-link">Yahoo</a>
<br><br> <br> <br> <br> <a href="#" data-toggle="popover" data-original-title="" data-content="<a href='http://www.google.com'>http://www.google.com</a>" class="some-popover-link">Google</a>
<br><br> <br> <br> <br> <a href="#" data-toggle="popover" data-original-title="" data-content="<a href='http://www.microsoft.com'>http://www.microsoft.com</a>" class="some-popover-link">Microsoft</a>
Run Code Online (Sandbox Code Playgroud)
JavaScript的
$('.some-popover-link').popover({
container: 'body',
html: true,
placement: 'bottom'
});
$(document).click(function (e) {
$('.some-popover-link').each(function () {
if (!$(this).is(e.target) && $(this).has(e.target).length === 0 && $('.popover').has(e.target).length === 0) {
$(this).popover('hide'); // this hides popover, but content remains
return;
}
});
});
Run Code Online (Sandbox Code Playgroud) 我有一个像这样的字符串:
192.168.114.182:SomethingFun-1083:EOL/Nothing Here : MySQL Database 4.12 192.168.15.82:SomethingElse-1325083:All Types : PHP Version Info : 23
我正在尝试在Oracle数据库中选择此项(使用REGEXP_SUBSTR)并在第二个冒号(:)之后获取所有剩余文本.
所以最后,我想得到这些值:
EOL/Nothing Here : MySQL Database 4.12
All Types : PHP Version Info : 23
Run Code Online (Sandbox Code Playgroud)
我试过这些,但它没有发现有效的东西.
REGEXP_SUBSTR(title,'[^:]+',1,3) as Title -- doesn't work if last field has ":"
REGEXP_SUBSTR(title,'(?:[^:]*:)+([^:]*)') as Title
Run Code Online (Sandbox Code Playgroud) grails ×2
jquery ×2
angularjs ×1
autocomplete ×1
caching ×1
categories ×1
data-dumper ×1
javascript ×1
jquery-ui ×1
oracle ×1
perl ×1
plsql ×1
regex ×1