我试图让 MobX 在反应中使用功能组件。我想这样做而不必使用装饰器。我已经使用 create-react-app 设置了一个应用程序,添加了 MobX 和 MobX-react 作为依赖项。但是,我似乎无法在功能组件中使用 observable。
import React from 'react';
import { extendObservable } from 'mobx';
import { observer } from 'mobx-react';
const Test = () => {
extendObservable(this, {
button: false
});
const handleB1 = () => {
this.button = false;
}
const handleB2 = () => {
this.button = true;
}
const getButton2 = () => {
console.log('button2');
return (
<button type="button" onClick={handleB2}>Button 2</button>
);
};
const getButton1 = () => {
console.log('button1');
return …Run Code Online (Sandbox Code Playgroud) 所以我正在向 npm 发布一个包。它基本上只是一个简单的模块,可以让用户进行 Ajax 调用,并且可以通过几种方式进行配置。
我已经读到在本地测试安装并尝试过是个好主意。我已经通过“npm pack”命令打包了包,切换到另一个目录,然后尝试通过“npm install path-to-file-that-was-just-created.tgz”安装包。到目前为止一切正常,我有一个 node_modules 文件夹,其中包含我的捆绑代码。
但是,即使只需要捆绑文件并且没有定义其他依赖项,也安装了我在实际模块的 package.json 中列为 devDependencies 的所有依赖项。我尝试更新 npm-shrinkwrap.json,并检查每个依赖项是否都将 dev 属性标记为 true。
目标实际上是让用户安装此模块,然后不安装任何依赖项,因为他们不需要 babel 或 mocha 来运行该模块。如何从包中排除这些?谢谢!