1

我想将它们从捆绑包中排除,以便它们可以被浏览器缓存。我在 webpack.config.js 中尝试了这个和一些变体但没有成功。react 和 react-dom 工作正常。

externals: {
    "react": "React",
    "react-dom": "ReactDOM",
    'mobx': "observable",
    'mobx-react': "observer"
},

我把它们放在我的 index.html 中

<script src="./node_modules/mobx/lib/mobx.umd.js"></script>
<script src="./node_modules/mobx-react/index.js"></script> 

我收到此错误:

observable is not defined

谢谢你的帮助。

4

2 回答 2

3

如果您不想在两个月后让其他阅读您的代码的人或您自己高度困惑,请使用外部导入 lib 而不是特定的函数 :)

externals: {
    "react": "React",
    "react-dom": "ReactDOM",
    'mobx': "mobx",
    'mobx-react': "mobxReact"
}
于 2016-11-22T06:26:39.867 回答
0

当您mobx全局包含时,您必须observable从全局mobx变量访问:

class MyStore {
  @mobx.observable prop = [];
}

或者:

var observable = mobx.observable;

class MyStore {
  @observable prop = [];
}
于 2016-11-22T01:21:41.717 回答