我们正在使用yarn这个项目,我们不想package.json用npm/ yarn命令混合编写脚本.
我有一个根目录,其中包含一些子文件夹.
每个人都有不同的服务.
我想在根文件夹中创建一个脚本,npm install每个服务一个接一个.
你知道什么是替代纱线npm install <folder>吗?
我正在寻找类似这个psuedo命令的东西: yarn <folder>
我是使用React-Jest-Enzyme进行测试的新手,但是根据我收集到的所有信息,在我看来,大多数测试实际上都会测试React库是否中断,而不是我的实际业务逻辑.
我会给你一些例子,如果我错了,请纠正我:
这个策略有什么用?
从我看到它的主要目的是捕获我的代码的任何不需要的更改.它" stringify "我的组件树,只是注意到是否添加了任何新的换行符,对吧?
所以它主要用于那些我可能会意外按下键盘的情况?或其他人意外地弄乱我的代码?
我看到的大多数示例解释了你使用它们的方式是这样的:
const wrapper = mount(<MyComponeny />)
expect(wrapper.find(‘button’).simulate(‘click)).toHaveBeenCalledTime(1)
Run Code Online (Sandbox Code Playgroud)
我能从中获得什么价值?如果我模拟用酶的按钮点击simulate(‘click’),那么我应该期望它会触发点击事件.
我在这里测试的是什么?酶的功能?
还有setState方法酶给我们.如果wrapper.setState({value: ‘some value’)}想改变我的状态,为什么我会看到这样的用例:
wrapper.setState({value: ‘new value’)}
expect(wrapper.state(‘value’)).toBe(‘new value’)
Run Code Online (Sandbox Code Playgroud)
?
为什么我需要测试测试框架/额外的库?
这一切似乎都有点含糊不清
我正在使用VSCode并安装了扩展:“ Jest ”以获得更好的玩笑测试环境。
在扩展的说明中,我看到我们为 Jest 的命令提供了很好的智能感知支持。
我没有在底部栏上看到“Jest”图标,这意味着 ext 无法正常工作。
我仍然没有得到对 jest 命令的智能感知支持
有没有人遇到过这个问题并找到正确配置它的方法?
我创建了一个存储库,我想在克隆后进行克隆,你运行npm install
如何在安装结束时将显示的echo日志消息记录到终端?
我正在使用React-router-dom开发一个React应用程序。
我有一个带有一些react-router-dom的菜单<NavLink />,每个菜单都将我带到不同的路线。
在我的主要路线中,path="/"我的chartComponent具有一个图表,该图表会随着随机数据而不断变化,如下所示:this.chartChangeId = setInterval(()=> this.setState(data), 1500)。
在我添加以下内容之前:
componentWillUnmount(){
clearInterval(this.chartChangeId);
}
Run Code Online (Sandbox Code Playgroud)
到chartComponent我的应用程序没有中断,但是出现了以下错误:
警告:只能更新已安装或正在安装的组件。这通常意味着您在未安装的组件上调用了setState,replaceState或forceUpdate。这是无人值守。请检查BrainWaveChart组件的代码。
所以我将其添加到生命周期中。
但是现在,当我单击其中一个<NavLink />转到另一条路线时,我的应用程序中断了,并且出现此错误:
未捕获到的TypeError错误:timeout.close不是在BrainWaveChart.componentWillUnmount(brainwaveChart.jsx:116x)处的export.clearTimeout.exports.clearInterval(main.js:14)处,在HTMLUnknownElement.call处的callComponentWillUnmountWithTimer(vendor_f02cab182c1842c98837.js:45235)处的export.clearTimeout.exports.clearInterval(main.js:14) vendor_f02cab182c1842c98837.js:37015)在Object.invokeGuardedCallbackDev(vendor_f02cab182c1842c98837.js:37054)在invokeGuardedCallback(vendor_f02cab182c1842c98837.js:36911)在safelyCallComponentWillUnmount(vendor_f02cab182c1842c98837.js:45242)在commitUnmount(vendor_f02cab182c1842c98837.js:45368)在commitNestedUnmounts(vendor_f02cab182c1842c98837.js :45404)在unmountHostComponents(vendor_f02cab182c1842c98837.js:45687)
我做错了吗?
目标:
我想创建一个被调用内部的发电机的功能setInterval(),以及console.log1至10.
问题:
为了clearInterval()最后我需要一个条件来检查是否gen.next().done === true.但是每次条件运行时,它都会调用另一个.next()
,所以我得到的最终打印是:
1 3 5 7 9 undefined
如何在不调用的情况下设置done == true条件.next()?
function* myGen(){
let counter = 0;
for(let i = 0 ; i <= 10; i++){
yield counter++;
}
}
const gen = myGen();
const start = setInterval(() => {
if(gen.next().done){
clearInterval(start);
} else {
console.log(gen.next().value);
}
}, 1500)
Run Code Online (Sandbox Code Playgroud) 我尝试运行一个带有节点的简单容器,我确实获得了添加的日志,.listen(port, log)
但是无法使用浏览器访问它。
我是Docker的新手,所以也许我错过了一些东西。
我首先运行docker build -t my-node-app .来创建我的图像。
然后我跑 docker run -it --rm -name myapp -p 3000:80 my-node-app
然后服务器运行,我看到在回叫中添加的日志 app.listen(port ,cb)
但是当我尝试打开时localhost:3000,什么也没出现。
当我在没有docker的计算机上本地运行时,它工作正常。
我也尝试使用通过找到的IP地址访问该URL docker inspect myapp,但是它也没有解决。
Dockerfile:
FROM node:4-onbuild
EXPOSE 80
Run Code Online (Sandbox Code Playgroud)
节点index.js:
const express = require('express');
const app = express();
const PORT = process.env.PORT || 3000;
app.get('/', (req, res) => {
console.log('hello')
res.send('it works!');
});
app.listen(PORT, () => {
console.log(`${process.env.NODE_ENV}server is running on port ${PORT} on ${process.platform}`);
});
Run Code Online (Sandbox Code Playgroud) 有什么办法可以做这样的事情吗?
if({color, size, shape} = this.props){
console.log('Received all props!');
} else {
console.log('There are some missing props');
}
Run Code Online (Sandbox Code Playgroud)
我想知道是否通过组件的道具收到了所有需要的数据,如果没有,则抛出错误。
用于创建可重用的组件。
javascript ×5
jestjs ×2
npm-install ×2
setinterval ×2
docker ×1
echo ×1
ecmascript-6 ×1
enzyme ×1
express ×1
generator ×1
if-statement ×1
npm ×1
npm-scripts ×1
reactjs ×1
snapshot ×1
subdirectory ×1
testing ×1
yarnpkg ×1