我正在学习星号.
安装星号后,我尝试使用它连接它
asterisk -rvvvvc.
Run Code Online (Sandbox Code Playgroud)
但它给了我以下错误消息:
无法连接到远程星号(/var/run/asterisk.ctl存在吗?)
我该如何解决这个问题?
vscode 以某种方式不尊重我的 tsconfig.json(几个星期以来,它已经不同了。无论是我的错误还是 vscode 更新......)
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"paths": {
"@foo-animation/*": [
"src/app/animation/*"
],
...
Run Code Online (Sandbox Code Playgroud)
分别在问题选项卡中:
找不到模块“@foo-animation/animation-micro”或其相应的类型声明。ts(2307)
? 常规基本路径(如@angular/core
)已正确解决,只有我的“自定义”路径才是问题...
? 编译、构建、运行......一切都像魅力一样。所以我相信从角度/打字稿的角度来看一切都很好。(另外,我使用 IntelliJ 的开发人员没有问题......)所以它似乎归结为“告诉 vscode 关于它”......:-/
Mytsconfig.json
位于项目的根文件夹中。唯一的问题是,我使用了另一个tsconfig.app.json
,其中包括上面的tsconfig.json
。
那么有没有办法告诉 vscode 在哪里寻找它的 tsconfig.json (鼓励解析这些路径)?
This SO question和this VSCode github issue可能相关,但我仍然不知道该怎么做。
typescript tsconfig visual-studio-code angular tsconfig-paths
我的问题不是为什么有些东西不起作用,而是为什么它起作用。是的。
\n\n我有一个小型的nodeJS命令行工具,其中包含nodeJS尚不支持开箱即用的功能,最值得注意的是:
\n\nimport
声明String.includes()
。因此,对于交付(构建),我转译+捆绑我的源代码(使用parcel,就像webpack一样)。
\n\n令人惊奇的是,我的所有(除了一个)摩卡测试都直接针对我的类而不是捆绑包运行。尽管如此,它们仍然有效!包括很多import
说法。并包括“ES6 自测试”:
it( \'String - include\', () => {\n var s = \'Southern Bananas\'\n assert( s.includes( \'anana\' ) )\n assert( !s.includes( \'kiwi\' ) )\n} )\n
Run Code Online (Sandbox Code Playgroud)\n\n我的测试代码中有 String.include ,而不仅仅是在被测试的源代码中。并且没有地方可以转译或捆绑我的测试代码\xe2\x80\xa6 因此,对我的愚蠢问题表示歉意:
\n\n我的mocha.opts
比较简单:
--require @babel/register\n--require ./test/once.js (nothing special here, either)\n--reporter list\n--recursive\n
Run Code Online (Sandbox Code Playgroud)\n\n我的.babelrc
有这个:
{\n "presets": [\n …
Run Code Online (Sandbox Code Playgroud) 可能重复:
GIT:忽略版本控制的文件
.gitignore
Stackoverflow上有很多答案,但我还没有找到答案:
我有一个现有的git项目,a readme.md
和a sample_folder/
都在顶层.我确实想从我的git(hub)存储库中删除它们.但我想忽略它们,即在某个克隆的本地存储库(即部署机器)中完全阻止它们.
.gitignore
我明白,只是忽略了非承诺文件?坦率地说,我不觉得周围隐藏任何东西(从拉+提交)已经东西是致力于...
在Perforce的时代,我会简单地将它从相应的"客户端规范"中排除(这与当地克隆的回购非常接近):
//whatever/myProject
-//whatever/myProject/readme.md
-//whatever/myProject/sample_folder
Run Code Online (Sandbox Code Playgroud)
当然,我可以选择第二个分支,我只需删除自述文件和整个示例文件夹.但是,我必须继续合并来自'develop'的每一个小修复.这是什么,我宁愿避免...我宁愿在(跟踪)分支上更喜欢本地"例外".
此外,我认为git rm --cached
每当我做提交(也可能现在发生,然后从我的'部署回购')...
我了解到在PHP for Windows下使用ftps('ftp_ssl_connect()')很难.您被要求进入构建自己的二进制文件以包含Open SSL的漫长旅程...我发现有关phpseclib的建议作为替代(但是获得openssl.cnf支持对等验证的权利对我来说也很难......) .
然后我点击了这篇文章,其令人愉快的简单示例包括工作对等验证(以避免中间人攻击)引起我对流的注意:
$uri = 'https://www.bankofamerica.com/';
$ctx = stream_context_create(['ssl' => [
'verify_peer' => true, // important
'cafile' => '/hard/path/to/cacert.pem',
'CN_match' => 'www.bankofamerica.com'
]]);
$html = file_get_contents($uri, FALSE, $ctx); // we are good
Run Code Online (Sandbox Code Playgroud)
但是,这对ftp连接有用吗?我还可以使用经过对等验证的流上下文来打开ftps流吗? php手册提示,ssl上下文选项也适用于sftp,但缺乏进一步的指导.
所以我疯狂地猜测:
$ctx = stream_context_create(['ftps' => [
'verify_peer' => true,
'cafile' => 'd:/sandbox/mycerts.pem',
'CN_match' => 'ftp-12345678.mywebhoster.com'
]]);
Run Code Online (Sandbox Code Playgroud)
对?错误?用户+密码现在作为选项?然后什么?用户/密码呢?还是以后?我无能为力......
这有甚么可能吗?(几行代码将非常有用....)或者流是否仅适用于单一文件访问?
更新:Curl可能会做我想要的(包括对等验证和目录lsiting),如本SO答案所示.本周晚些时候会检查......
来自一些经典的服务器端模板语言(php、jsp),我有一个关于 React.js 的一般架构问题:
我可以限制页面的某些组件仅在服务器端呈现吗?并相应地减少客户端 javascript 包?
*我发现它通常大得可笑。一个原因(afaik):每个组件都必须能够在状态更改和 SPA(又名软、虚拟..)页面导航时重新呈现,因为所有更改都是作为数据传入的,而不是作为预渲染的 html 块(afaik) .
基本上,我在几乎所有的 Web 项目中都看到了 2 种不同类型的内容部分:
1) 高度动态的“facebook-ish”交互部分 个人问候、消息和消息计数器、喜欢和回复……这里默认的 React 行为处于最佳状态:新数据进来,全局状态(redux 存储)更改,所有受影响的组件都得到重新- 渲染。如果没有 react 和 redux sound 原则,这将是一项艰巨的任务。当然,客户端渲染/更新是必经之路。
这通常是顶部的用户登录区域(“你好乔,5 条未读消息”),中间是一些实时数据(股票、天气等),靠近底部的是评论。
2)SSR“静态”内容(想想PHP)
但是,对于我确定的许多部分,没有什么是客户端动态的。例如,页脚菜单可能源于数据库,但在会话期间肯定不会更改。(即使 John Doe 决定喜欢、评论或更改他的名字……)
仅在服务器端渲染它们就足够了。通常主要内容块也可以只使用 SSR。(以及呈现其 html 所需的所有 layout-ish 子组件)
尽管如此,我必须将所有组件都提供给客户端包,以便虚拟/软页面导航也能工作......(传输新数据,但不传输预渲染部分)
您可以告诉我作为一种解决方法,将页脚简单地保持在反应容器安装点之外,但这不是我的观点......可以使用纯 SSR 的“静态”又名部分也可能在其他地方,在动态标题和较低之间响应/反馈/喜欢部分...
我想将 Type-2-components 标记为“SSR-is-enough”(还有它们的子组件——除非 webpack 依赖树弄清楚,它们也用于 Type1-CSR-components ......)。
所以将它作为单个 html blob 发送。还需要在 SPA 式虚拟页面导航上“预渲染”它。(因为组件知识将从客户端包中丢失)
有没有办法做到这一点?之前有人想过这个普遍的,恕我直言的常见问题......?
我有一个外部组件(蓝绿色),其中包含一些带有我自己的ui-button
按钮的flexbox 工具栏。还有一个内部组件,主要在棕色区域做它的事情(正如你所期望的)。
但是,根据内部组件(有几个来回切换的组件),必须在顶部/底部栏中插入更多上下文按钮。
(在外部使用绝对定位内容的 CSS 技巧不是一种选择,根据大小和便利性,外部工具栏的位置、大小等可能会有很大差异......)
我可以以某种方式传递对某些占位符(黑色方括号)的引用(就像常规内容投影/嵌入一样),并让它们由来自子组件的内容填充?
也许像ngTemplate[Outlet]这样的东西?和/或使用 @Output?
我想“向上传递”多于plain text
或simple <b>rich</b> <i>html</i>
理想情况下真正的角度模板代码,包括自定义组件,如
<ui-button icon="up.svg" (click)='...'></ui-button>
<ui-button icon="down.svg" (click)='...'></ui-button>
Run Code Online (Sandbox Code Playgroud)
...在外部组件的顶部栏中引导到:
<section class='some-flexbox'>
<ui-button icon="home.svg" (click)='...'></ui-button>
<ui-button icon="up.svg" (click)='...'></ui-button>
<ui-button icon="down.svg" (click)='...'></ui-button>
<ui-button icon="help.svg" (click)='...'></ui-button>
<ui-button icon="account.svg" (click)='...'></ui-button>
</section>
Run Code Online (Sandbox Code Playgroud)
想一想,添加的那些按钮的点击事件应该是找到了回家的路子,叹息……
更新
ngTemplateOutlet
听起来很有趣
我们还可以使用 ngTemplateOutlet 指令获取模板本身并在页面上的任何位置实例化它:
检查中,仍然不知道如何...
我基本上很确定这种模式必须存在并拥有一个名字......现在我称之为"门模式"......
这里是:
在我的网页的javascript中,我必须触发各种异步进程.我们不讨论如何完全异步js,但无论如何我必须触发2或3个AJAX调用,必须确定,UI构建已完成,依此类推.
只有这样,当所有这些过程完成后,我想要运行某个功能.而且恰好一次.
例
1: cropStore loaded()
2: resizeEvent()
3: productStore loaded()
Run Code Online (Sandbox Code Playgroud)
模式:在每个(成功)Ajax-load-callback结束时,GUI构建例程的结束等...我将相应的标志从false设置为true并调用gatedAction()
onEvent( 'load',
{
.... // whatever has to happen in response to cropStored, resized, etc...
// lastly:
f1 = true; //resp f2, f3, ...
gatedAction();
}
Run Code Online (Sandbox Code Playgroud)
Gate将检查标志,如果仍未设置任何标志则返回,仅调用目标函数,如果所有标志(或我称之为:gate)都打开.如果我的所有异步前置条件都只调用一次gatedAction(),我希望我可以肯定,实际的targetFunction只调用一次().
gatedAction ()
{
// Gate
if ( ! f1) return;
if ( ! f2) return;
if ( ! f3) return;
// actual Action ( <=> f1==f2==f3==true )
targetFunction();
}
Run Code Online (Sandbox Code Playgroud)
在实践中它可靠地工作.旁注:我认为java-typical(不是js-typical)同步/ volatile问题可以被忽略,因为javascript并不是真正的多线程.Afaik一个函数永远不会停在它的中间,只是为了在同一个文件运行时授予另一个javascript函数...
我经常需要这种模式,特别是对于复杂的后端UI ..(是的,我认为,我会将上面的对接丑陋的实现变成一个更可重用的javascript ...有一个gate数组和一个目标函数.)
嘿!
/static
我的Apache 2.x服务器webroot中有一个文件夹.如果请求匹配
/static/<somename like [\S-_]+>.(png|jpg|css|js)/\d{8,15}
Run Code Online (Sandbox Code Playgroud)
例如
/static/bg.jpg/1335455634
Run Code Online (Sandbox Code Playgroud)
我想要两件事:
/static/bg.jpg
(摆脱时间戳)如果请求不匹配,请求及其标题应该正常,不重写.理想情况下,/ static/*之外的任何请求都不应受到影响(尽管«巧合的尾随时间段»应该很少......)
我对FilesMatch/RewriteCond只有麻烦,所以我宁愿不发布我的不良尝试...(在我的机器上启用了genereal中的重写,我确实拥有发送缓存相关头文件的权限)
Dankeschön!
我想标记格式化字符串(非常类似于printf),我想我只是遗漏了一点点:
²update:现在使用#而不是%.(使用Windows命令行参数减少麻烦)
如果你专注于通过管道连接的三个部分(作为 - 或者),这并不可怕,所以基本上它只是三个匹配.由于我想从头到尾进行匹配,因此我将事物包裹起来/^...%/
并被一个(?:...
可能重复一次或多次的不匹配组包围:
$exp = '/^(?:(%\\d*[ctYymd]+)|([^$%]+)|(\\$\\d))+$/';
Run Code Online (Sandbox Code Playgroud)
我的来源仍未提供:
$exp = '/^(?:(%\\d*[ctYymd]+)|([^$%]+)|(\\$\\d))+$/';
echo "expression: $exp \n";
$tests = [
'###%04d_Ball0n%02d$1',
'%03d_Ball0n%02x$1%03d_Ball0n%02d$1',
'%3d_Ball0n%02d',
];
foreach ( $tests as $test )
{
echo "teststring: $test\n";
if( preg_match( $exp, $test, $tokens) )
{
array_shift($tokens);
foreach ( $tokens as $token )
echo "\t\t'$token'\n";
}
else
echo "not valid.";
} // foreach
Run Code Online (Sandbox Code Playgroud)
我得到的结果却是:比赛失灵了.第一个%[数字] [字母]从不匹配,因此其他匹配双:
expression: /^((%\d*[ctYymd]+)|([^$%]+)|(\$\d))+$/
teststring: ###%04d_Ball0n%02d$1 …
Run Code Online (Sandbox Code Playgroud) angular ×2
javascript ×2
php ×2
.htaccess ×1
apache ×1
asterisk ×1
ecmascript-6 ×1
ftp ×1
ftps ×1
gateway ×1
git ×1
github ×1
gitignore ×1
mocha.js ×1
mod-expires ×1
node.js ×1
reactjs ×1
regex ×1
security ×1
smartgit ×1
ssl ×1
tokenize ×1
transclusion ×1
transpiler ×1
tsconfig ×1
typescript ×1
webpack ×1
webpack-2 ×1