随着React 中钩子的引入,现在的主要困惑是何时使用带钩子和类组件的功能组件,因为在钩子的帮助下state
,lifecycle hooks
即使在功能组件中也可以获得和部分.所以,我有以下问题
例如,带有钩子的功能组件无法像类组件那样帮助执行.他们无法跳过重新渲染,因为他们没有shouldComponentUpdate
实现.还有原因吗?
提前致谢.
如何使用autoprefixer
webpack 2.x.
以前,它曾经是这样的......
...
module: {
loaders: [
{
test: /\.scss$/,
loader: 'style!css!sass!postcss'
}
]
},
postcss: () => {
return [autoprefixer]
},
...
Run Code Online (Sandbox Code Playgroud)
但是,它不再起作用了.
如何将其重写为webpack@2.xx?
我需要模拟客户端HTTP请求.我isomorphic-fetch
在客户端使用mocha
,我正在使用并nock
进行测试和嘲笑.我的所有客户请求都基于相对路径.由于这个原因,我无法提供主机名nock
.有工作吗?
客户端:
fetch('/foo') //hostname: http://localhost:8080
.then(res => res.json())
.then(data => console.log(data))
.catch(e => console.log(e))
Run Code Online (Sandbox Code Playgroud)
测试套件
nock('/')
.get('/foo')
.reply(200, {data: "hello"})
Run Code Online (Sandbox Code Playgroud)
这是失败的,因为我没有给出正确的主机名nock
.难道我做错了什么?
refetch
重新访问数据供电的页面时如何获取新数据react-apollo
?
说,我第一次访问列表页面.apollo
将获取查询并默认缓存它.因此,当您在会话期间再次访问同一页面时,它将从其缓存存储中填充数据.apollo
每次组件安装时如何强制重新获取数据?
我有以下 JSX 结构。
<div css={content} style={{ minHeight: props.minHeight }}>
<p css={description}>{props.description}</p>
</div>
Run Code Online (Sandbox Code Playgroud)
现在我需要编写一种样式,该样式将更改悬停description
时的背景。content
如何使用 css 对象在情感中编写它。
我尝试过这样做。但这没有用。
const description = css({
background: 'yellow'
})
const content = css({
'&:hover': {
[description]: {
background: 'red',
},
},
})
Run Code Online (Sandbox Code Playgroud)
提前致谢!
我有一个用例,我有一种语言 X,其中我支持 HTML。由于我在 VScode 中将文件扩展名关联为“.x”,因此我没有获得 X 内 HTML 的自动完成和属性建议。如何解决这个问题。
我尝试过的方法,
vscode.html
并在 activate 方法中激活了它。const htmlPluginId = 'vscode.html';
export const activate = () => {
const htmlPlugin = vscode.extensions.getExtension(htmlPluginId);
const ht = await htmlPlugin.activate();
}
Run Code Online (Sandbox Code Playgroud)
这不起作用。我猜想,HTML 插件与 X 语言运行没有关联。
vscode-html-languageserver
。import {getLanguageService} from 'vscode-html-languageservice';
let connection = createConnection();
let documents = new TextDocuments(TextDocument);
const htmlLanguageService = getLanguageService();
connection.onCompletion((textDocumentPosition) => {
const document = documents.get(textDocumentPosition.textDocument.uri);
const htmlDocument = htmlLanguageService.parseHTMLDocument(document!);
if (htmlDocument.roots.length > 0) { …
Run Code Online (Sandbox Code Playgroud) 我有一个_color.scss
文件,其中包含400种颜色作为变量。我喜欢20个需要在其样式中使用此颜色变量的组件。
我正在使用SCSS + CSS模块构造样式。到目前为止,我正在将其导入_color.scss
每个组件的中style.scss
。
例:
component1.scss
@import "color.scss";
Run Code Online (Sandbox Code Playgroud)
component2.scss
@import "color.scss";
Run Code Online (Sandbox Code Playgroud)
component3.scss
@import "color.scss";
Run Code Online (Sandbox Code Playgroud)
以前,当我独立使用SCSS时,我会将导入color.scss
到我的系统中,index.scss
然后导入它下面的所有其他样式。这样,变量将在所有组件中可用。
例:
//index.scss
@import "color.scss";
@import "component1.scss";
@import "component2.scss";
@import "component3.scss";
Run Code Online (Sandbox Code Playgroud)
现在,所有下的变量_color.scss
将可用下component1.scss
,component2.scss
和component3.scss
。
有没有办法做与此类似的事情CSS Modules + SCSS
?一个声明全局变量的地方?
是否有可能安装devDependencies
和dependencies
纱一起?
例如,如果要安装react
和webpack
。React是一个依赖关系,而webpack是一个开发依赖关系。要安装两者,我需要运行这两个命令
yarn add react
yarn add webpack -D
Run Code Online (Sandbox Code Playgroud)
是否可以将它们组合为一个命令,或者有其他选择吗?就像在不运行多个命令的情况下同时安装devDependencies和依赖项一样。
我在chrome开发者控制台中编写了一些随机代码.令我惊讶的是,chrome让我let
用作变量名,这是一个完全错误let
的保留关键字.我需要明白为什么会这样.
场景:
var const = 78 //throws an error as expected
var function = 46 //throws an error as expected
var let = 56 //didn't throw an error :O
let //prints 56, which is wrong because 'let' is a keyword
let ab = 90
ab //prints 90 as expected
Run Code Online (Sandbox Code Playgroud)
这个缺陷存在于node
.但是,当我在Babel REPL中尝试它时,它会抛出一个错误.
我认为这与Google v8有关
如何使用sass-resources-loader和vue-cli@3.x添加全局scss变量和mixins.
render () {
const { params } = this.props.params
return (
<div>{ params.article }</div>
)
}
Run Code Online (Sandbox Code Playgroud)
为什么 params 需要用大括号括起来,它可能只是 'const params = this.props.params'
我有一个数组将采用n值,但值将在不同的时间添加到不同的索引.但是,我需要在特定时间的数组长度.
情况1
var a = [1,2,3,3,4]
a.length //Returns 5 - OK
Run Code Online (Sandbox Code Playgroud)
案例2
var a =[]
a[20] = 2
a.length //Returns 21 but I would like it to return 1
Run Code Online (Sandbox Code Playgroud)
如何获得长度1
的情况下,2?
javascript ×10
reactjs ×6
webpack ×3
ecmascript-6 ×2
node.js ×2
apollo ×1
arrays ×1
css ×1
css-modules ×1
emotion ×1
fetch ×1
graphql ×1
mocha.js ×1
nock ×1
npm ×1
react-apollo ×1
react-hooks ×1
sass ×1
typescript ×1
v8 ×1
vue-cli ×1
vue.js ×1
yarnpkg ×1