Javascript 是否可以使用MobX而不进行反应?
我喜欢MobX。 我想在原生JavaScript中使用它。 我尝试添加CDN 然后我尝试用MobX语法编写一个类:Javascript 是否可以使用MobX而不进行反应?,javascript,mobx,Javascript,Mobx,我喜欢MobX。 我想在原生JavaScript中使用它。 我尝试添加CDN 然后我尝试用MobX语法编写一个类: class MyStore { @observable data = 'foo' } const myStore = new MyStore(); 但我有错误: SyntaxError: illegal character 对于@和: ReferenceError: exports is not defined 从文件内部mobx.js 因此,如果没有反应,没有钝化/传输
class MyStore {
@observable data = 'foo'
}
const myStore = new MyStore();
但我有错误:
SyntaxError: illegal character
对于@
和:
ReferenceError: exports is not defined
从文件内部mobx.js
因此,如果没有反应,没有钝化/传输,这似乎是不可能的,是吗?
如果没有,还有其他选择吗
谢谢大家! 是的,您可以使用MobX而不使用React,但在您的示例中,您使用了属于ES.Next的decorators语法,浏览器本机不支持该语法,并且需要transpiler(例如Babel)
如果您想在浏览器中直接使用MobX而不使用装饰程序,那么以下说明对您很有用:正如@someone235所说,这是可能的 下面是一个没有任何反应的示例: 这就是代码,尽管我无法在中启用装饰器,所以下面的示例不起作用。链接确实有效
const{observable,computed,autorun}=mobx;
类MyStore{
@可观测数据='foo'
}
const myStore=新myStore();
自动运行(()=>{
console.log(myStore.data);
document.getElementById('log')。innerHTML+=myStore.data+“
”
})
myStore.data='bar'
日志
不需要装饰师。您可以尝试Mobx 4方法:
import { decorate, observable} from "mobx"
class MyStore {
data = 'foo'
}
decorate(City, {
data: observable,
})
const myStore = new MyStore();
这里有更多详细信息如果您需要decorator语法,您不需要React,但需要Babel(
Babel-preset-mobx
preset)