小编Phi*_*p M的帖子

Node.js puppeteer - 如何设置导航超时?

我正在使用node.js和puppeteer来获取一些数据.我正在打开的一些文件很大......然后我收到一个错误:

错误:

our error { TimeoutError: Navigation Timeout Exceeded: 30000ms exceeded
    at Promise.then (/project/node_modules/puppeteer/lib/NavigatorWatcher.js:74:21)
    at <anonymous> name: 'TimeoutError' }
Run Code Online (Sandbox Code Playgroud)

如何忽略它或设置更高的超时?

那是我的剧本:

await page.goto('url'+tableCell04Val, {waitUntil: 'load'});
Run Code Online (Sandbox Code Playgroud)

javascript node.js puppeteer

18
推荐指数
6
解决办法
2万
查看次数

Leaflet.js:使用ctrl + scroll缩放地图并在移动设备上用两根手指移动地图

我正在使用http://leafletjs.com/ ...是否可以只:

  1. 使用ctrl + scroll缩放地图

  2. 在移动设备/平板电脑上用两根手指移动地图

...谷歌地图的功能如此相似?随着评论......

到目前为止,这是我的设置:

// Leaflet Maps
var contactmap = L.map('contact-map', {
        center: [41.3947688, 2.0787279], 
        zoom: 15,
        scrollWheelZoom: false
    });
Run Code Online (Sandbox Code Playgroud)

leaflet

13
推荐指数
3
解决办法
6174
查看次数

TYPO3 Powermail - 在复选框标签或标题中添加链接的方法

从powermail 6.0开始。可以根据文档在复选框标签中添加链接(针对 GDPR):

https://docs.typo3.org/typo3cms/extensions/powermail/ForAdministrators/Privacy/Index.html#add-a-link-in-a-checkbox-label

它说:

只需使用 FlexForm 中的一个选项,例如(带有指向隐私条款所在的第 123 页的示例链接):

I accept the <f:link.page pageUid="123">privacy terms</f:link.page> | privacy terms accepted
Run Code Online (Sandbox Code Playgroud)

之后,您必须在标签中启用 html(出于安全原因,此功能已关闭)。TypoScript 常量示例:

plugin.tx_powermail.settings.misc.htmlForLabels = 1
Run Code Online (Sandbox Code Playgroud)

...但它还说“(出于安全原因此功能已关闭)”。

还有哪些其他选择可以实现这一目标?(没有安全损失?)

typo3 typo3-extensions powermail typo3-8.x

5
推荐指数
1
解决办法
5529
查看次数

使用分隔符“,”合并列,如果不存在值则不渲染分隔符

我将数据合并到 A 列中,如下所示:

=B2&","&C2&","&D2

A        |  B | C  | D 
ES,,        ES      
DE,NL,IT    DE  NL  IT
CH,,        CH      
CH,,        CH      
DE,BE,AT    DE  BE  AT
FR,BE,      FR  BE  
CH,SG,      CH  SG  
AT,CH,ES    AT  CH  ES
Run Code Online (Sandbox Code Playgroud)

然而,如果列中没有值,它会附加例如我不想要的额外的 , 。所以结果应该是这样的

A        |  B | C  | D 
ES          ES      
DE,NL,IT    DE  NL  IT
CH          CH      
CH          CH      
DE,BE,AT    DE  BE  AT
FR,BE       FR  BE  
CH,SG       CH  SG  
AT,CH,ES    AT  CH  ES
Run Code Online (Sandbox Code Playgroud)

怎么做呢?

excel excel-formula excel-2010

4
推荐指数
1
解决办法
5054
查看次数

Node.js joi - .number() 无法通过 0

我有这个 joi 模式使用 .number() 作为主体参数“public”

contactSchema: Joi.object().keys({
    email: Joi.string().email().required(),
    public: Joi.number().required()
}),
Run Code Online (Sandbox Code Playgroud)

如果我在某些情况下允许参数为 0 ......

if(req.session.sessionEmail){
    var isPublic = 0;
  } else {
    var isPublic = 1;
  }
Run Code Online (Sandbox Code Playgroud)

... joi 说它无效。

如果我没有通过 0 ......一切都好吗?

if(req.session.sessionEmail){
    var isPublic = 2;
  } else {
    var isPublic = 1;
  }
Run Code Online (Sandbox Code Playgroud)

为什么它在 0 的情况下失败?

https://github.com/hapijs/joi/blob/master/API.md#number---inherits-from-any

node.js joi

4
推荐指数
1
解决办法
2454
查看次数

Node.js puppeteer - 获取由 br 分隔的内容并将项目存储在单独的变量中

我正在使用 node.js 和 puppeteer 来获取一些数据。如何将元素的内容(由换行符分隔<br>)保存在两个单独的变量中?

这就是我正在查看的 HTML:

<table summary="">
    <tbody>
        <tr nowrap="nowrap" valign="top" align="left">
            <td nowrap="nowrap">2018-08-14<br>16:35:41</td>
        </tr>
    </tbody>
</table>
Run Code Online (Sandbox Code Playgroud)

我得到的 td 内容如下(app.js):

let tableCell04;
let accepted;

tableCell04 = await page.$( 'body div table tr td' );
accepted = await page.evaluate( tableCell04 => tableCell04.innerText, tableCell04 );

console.log('Accepted: '+accepted);
Run Code Online (Sandbox Code Playgroud)

控制台的输出是:

Accepted: 2018-08-14
16:35:41
Run Code Online (Sandbox Code Playgroud)

但我想要的是将换行符分隔的内容存储在两个单独的变量中,以便我得到如下内容:

Accepted_date: 2018-08-14
Accepted_time: 16:35:41
Run Code Online (Sandbox Code Playgroud)

node.js puppeteer

3
推荐指数
1
解决办法
815
查看次数

Node.js - ssh2-sftp-client 收到多个文件错误

我使用 ssh2-sftp-client 来获取一些文件。如果我使用 sftp.end(); 最后我在控制台中收到此错误:

{ Error: fastGet->exists->exists: No SFTP connection available
    at Object.formatError (/home/project/node_modules/ssh2-sftp-client/src/utils.js:62:18)
    at SftpClient.fastGet (/home/project/node_modules/ssh2-sftp-client/src/index.js:590:19)
    at process._tickCallback (internal/process/next_tick.js:68:7) code: 'ERR_NOT_CONNECTED', custom: true } 'Error'

...
Run Code Online (Sandbox Code Playgroud)

我缺少什么?

javascript ssh sftp node.js ssh2-sftp-client

3
推荐指数
1
解决办法
5325
查看次数

TYPO3 - TCA迁移检查显示已迁移字段'showitem'的第四个参数'specConf',其中fieldName ='sys_language_uid'

从7LTS升级到8LTS并运行TCA迁移检查我的扩展后,结果列表显示以下内容:

评论:

已经迁移了具有fieldName ='sys_language_uid'的字段'showitem'的第四个参数'specConf',从TCA表"tx_myextension_domain_model_accounts ['types'] ['1'] ['showitem']"到"tx_myextension_domain_model_accounts ['types' ] [ '1'] [ 'columnsOverrides'] [ 'sys_language_uid'] [ 'defaultExtras']".

在TCA,我认为这是现场:

'types' => array(
    '1' => array('showitem' => 'sys_language_uid;;;;1-1-1, l10n_parent, l10n_diffsource, hidden;;1, --div--;LLL:EXT:cms/locallang_ttc.xlf:tabs.access, starttime, endtime'),
),
Run Code Online (Sandbox Code Playgroud)

我需要做些什么改变才能摆脱评论?

我认为这是相关部分:https://docs.typo3.org/typo3cms/extensions/core/7.6/Changelog/7.3/Deprecation-67229-TcaChanges.html

还有这个评论?:

从TCA表中迁移'showitem'字段tx_accountmanager_domain_model_accounts ['types'] ['1']":移动了名称为"tx_myextension_domain_model_accounts ['types'] ['1'] ['1']"作为字段的第3个参数"的附加调色板tx_myextension_domain_model_accounts ['types'] ['1'] ['hidden']"到自己的调色板.这部分的结果是:"hidden, - palette - ;; 1"

typo3 typo3-8.x

2
推荐指数
2
解决办法
2388
查看次数

TYPO3 - 在自己的扩展中停用 cHash - 8LTS

我正在尝试在我的扩展程序中停用 cHash ......显示操作的链接如下所示:

/?tx_abc_abc[record]=1&tx_abc_abc[action]=show&tx_abc_abc[controller]=Abc&cHash=10c78febea3ae5dsdf535fb36ca6d08
Run Code Online (Sandbox Code Playgroud)

在 ext_localconf.php 中,我尝试像这样停用 cHash:

ext_localconf.php

<?php
if (!defined('TYPO3_MODE')) {
    die('Access denied.');
}

\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
    'Vendor.' . $_EXTKEY,
    'Abc',
    array(
        'Abc' => 'list,show',

    ),
    // non-cacheable actions
    array(
        'Abc' => 'list,show',

    )
);

$GLOBALS['TYPO3_CONF_VARS']['FE']['cacheHash']['excludedParameters'][] = 'tx_abc_abc[record],tx_abc_abc[action],tx_abc_abc[controller]';
Run Code Online (Sandbox Code Playgroud)

虽然它不起作用。我错过了什么?

typo3 typo3-extensions typo3-8.x

2
推荐指数
1
解决办法
3443
查看次数

TYPO3 扩展 - 如果未设置记录或不可用,则重定向到显示操作中的另一个页面

当有人访问详情页面但没有记录或记录不可用时,如何重定向到另一个页面?

我有详细记录,例如

domain.com/abc/ABC1234
Run Code Online (Sandbox Code Playgroud)

当有人进来时

domain.com/abc/
Run Code Online (Sandbox Code Playgroud)

...我得到:

Uncaught TYPO3 Exception
#1298012500: Required argument "record" is not set for Vendor\Extension\Controller\ActionController->show. (More information)

TYPO3\CMS\Extbase\Mvc\Controller\Exception\RequiredArgumentMissingException thrown in file
/is/htdocs/www/typo3_src-8.7.11/typo3/sysext/extbase/Classes/Mvc/Controller/AbstractController.php in line 425. 
Run Code Online (Sandbox Code Playgroud)

...在这种情况下我希望它重定向到:

domain.com/other-page/
Run Code Online (Sandbox Code Playgroud)

...如果没有特定记录,我也需要它。
……怎么办呢?

/**
 * action show
 *
 * @param \Action $record
 * @return void
 */
public function showAction(Action $record) {

    $this->view->assign('record', $record);

}
Run Code Online (Sandbox Code Playgroud)

以下是一些示例TYPO3 Extbase - 重定向到 pid ...但不确定如何实现它

编辑:有效的是......

/**
 * action show
 *
 * @param \Action $record
 * @return void
 */
public function showAction(Action $record=null) {   

  if …
Run Code Online (Sandbox Code Playgroud)

typo3 extbase typo3-extensions typo3-8.x

2
推荐指数
1
解决办法
8808
查看次数