我在这里面临一个复杂的问题,非常感谢您的帮助。当我导航到应用程序的不同页面时,某些服务响应错误,并且我在不同页面中看到该错误。例如,假设我想买东西,为此我调用一个处理此任务的传奇。然后我立即注销,并在登录中看到错误。当我更改屏幕时,我想取消当前页面中运行的所有传奇故事。为了解决这个问题,我做了一个动作,当用户从一个屏幕切换到另一个屏幕时调度该动作。此操作正在调用生成器函数:
function* taskCancelHelper(actions, sagas) {
.....
}
Run Code Online (Sandbox Code Playgroud)
我的第一个问题是如何“采取”当前屏幕中调度的所有预期操作并调用适当的传奇。我用了:
const action = take(action => [..actions in the current screen].indexOf(action.type) < 0); but it does not seem to work.
Run Code Online (Sandbox Code Playgroud)
然后我想将调度此操作时调用的所有传奇故事传递到数组中[上述操作的传奇故事]。我的想法是在我的 taskCancelHelper* 生成器函数中传递这两个数组,并使用 for 循环来取消每个任务:
For (i=0; i < actions.length; i++) {
yield cancel(sagas[i])
}
Run Code Online (Sandbox Code Playgroud)
您知道如何执行当前屏幕上调用传奇的所有操作吗?
我在这个网站上尝试了这段代码,它工作正常并返回 60,因为它应该,但是当我尝试在 HTML 网页上运行它时,它首先返回 10,其他 2 个值将是 NaN,我不明白为什么发生此错误。我将不胜感激您的解决方案。
var numbers = [ 10, 20, 30 ] ;
numbers.reduce(function(sum , number){
return console.log( sum + number);
} , 0);Run Code Online (Sandbox Code Playgroud)
是否有任何Visual Studio插件(任何版本)或任何其他ide可以显示标准库函数原型及其(示例),返回等标准c库...就像在eclipse中找到的java代码助手一样我没有错(我不是一个java开发人员,但我想我看到了类似于我所描述的内容).
注意:我知道我可以使用谷歌或msdn,但我问其他选择.
我可以在控制器类中调用辅助函数吗?
假设我有_open_form方法的控制器
class User extends Controller {
function _open_form($action){
print_r(form_open($action));
}
}
Run Code Online (Sandbox Code Playgroud)
我试图回显form_open()的结果,但它返回null.似乎辅助函数不能在控制器内部调用
如果你想知道为什么我需要在控制器内使用它而不是在视图中,因为我们需要使用给定的模板解析器xD
我使用Cakephp 2.1,我需要从视图助手调用一个驻留在插件中的组件方法:
该组件在这里:
/app/Plugin/Abc/Controller/Component/AbcComponent.php
帮助者在这里:
/app/View/Helper/SimpleHelper.php
我试过里面的帮手:
App::import('Component', 'Abc.Abc');
$this->Abc = new Abc(); or $this->Abc = new AbcComponent;
Run Code Online (Sandbox Code Playgroud)
要么
$this->Abc = $this->Components->load('Abc.Abc');
Run Code Online (Sandbox Code Playgroud)
在控制器内部,这个组件没有问题.我知道这不推荐(MVC设计等),但如果我不这样使用它,我需要复制很多代码.我需要做类似的事情:
MyHelper extends Helper{
$simpleVar = Component->get_data();
}
Run Code Online (Sandbox Code Playgroud) 我需要显示和隐藏一个表单是客户是否登录.
我有这个帮手:
<?php
if ($this->helper('customer')->isLoggedIn() ) {
echo "Hide Form";
} else {
echo "<form id="form1" name="form1" method="post" action="post.php">
<input name="Type your name" type="text" value="name" />
<label>
<input type="submit" name="send" id="send" value="Submit" />
</label>
</form>";
}
?>
Run Code Online (Sandbox Code Playgroud)
谢谢
具有多个返回的方法
def savings_for(id)
payments = Payment.user_of(id).all
savings = 0
num = 0
payments.each do |payment|
item = Item.find(payment.id)
num = num+1
savings += item.price
end
return savings, num
end
Run Code Online (Sandbox Code Playgroud)
我在视图中使用这个帮助器.像这样
<p>You´ve save <b><%=savings_for(current_user)%>$</b></p>
Run Code Online (Sandbox Code Playgroud)
但我不知道如何正确渲染:
You´ve save [#<BigDecimal:108289ca0,'0.13E3',9(27)>, 3]$
Run Code Online (Sandbox Code Playgroud)
更新:更改了返回方法:
return "<b>#{savings}€</b> en #{num}"
Run Code Online (Sandbox Code Playgroud)
我如何渲染html粗体标签?
为什么当它显然将它添加到lst时总是返回nil ???
请帮忙!
谢谢!
CL-USER 1 : 1 > (defun constants-aux (form lst)
(cond ((null form) lst)
((eq (car form) 'implies) (constants-aux (cdr form) lst))
((eq (car form) 'not) (constants-aux (cdr form) lst))
((eq (car form) 'and) (constants-aux (cdr form) lst))
((eq (car form) 'or) (constants-aux (cdr form) lst))
((atom (car form)) (print (car form)) (cons (car form) (list lst)) (delete-duplicates lst) (constants-aux (cdr form) lst))
(T (constants-aux (car form) lst) (constants-aux (cdr form) lst))))
CONSTANTS-AUX
CL-USER 2 : 1 …Run Code Online (Sandbox Code Playgroud) 我在我的Controller中有这个方法,多次调用indexAction().我应该保持它原样,还是应该为它和其他可重用方法创建Helper类(服务),因为我可以避免传递诸如此类$em情况的参数?我无法理解服务的背景以及何时使用它们很舒服.
public function getProfile($em, $username, $password) {
$dql = $em->createQuery('SELECT Profiles FROM ProjectProjectBundle:Profiles AS Profiles WHERE Profiles.email = :email AND Profiles.password = :password')
->setParameters(array(
'email' => $username,
'password' => $password
));
return $dql->getArrayResult();
}
Run Code Online (Sandbox Code Playgroud) 这是我的ApplicationController控制器:
class ApplicationController < ActionController::Base
helper_method :is_admin?
def is_admin?
...
end
end
Run Code Online (Sandbox Code Playgroud)
我想is_admin?在Sidekiq工作者中使用这个助手.到目前为止,我在这里包括:
class GenerateInvoiceWorker
include Sidekiq::Worker
def perform(product_id)
av = ActionView::Base.new()
av.view_paths = ActionController::Base.view_paths
av.class_eval do
include Rails.application.routes.url_helpers
include ApplicationHelper
end
...
end
end
Run Code Online (Sandbox Code Playgroud)
如何在工作者中使用辅助方法?
谢谢
helper ×10
javascript ×2
php ×2
c ×1
cakephp ×1
class ×1
codeigniter ×1
common-lisp ×1
components ×1
controller ×1
forms ×1
function ×1
generator ×1
lisp ×1
magento ×1
partial ×1
recursion ×1
reduce ×1
redux-saga ×1
ruby ×1
sidekiq ×1
symfony ×1