dva使用yarn编译出错
1. 报错信息
./src/models/example.jsModule build failed: TypeError: /Users/user/Desktop/learn-code/10.React/01_dva-came/src/models/example.js: path.isPrivate is not a function at Array.forEach ()
只要启动项目,然后修改example代码,只要example发生改变就会报该错误,无论是添加注释还是产生新的换行
2.原始代码
// example.js
import { routerRedux } from "dva/router";
// routerRedux == connected-react-redux
function delay(ms) {
return new Promise((resolve) => {
setTimeout(() => {
resolve();
}, ms);
});
}
export default {
namespace: "counter",
state: {
count: 1,
},
//ddd
subscriptions: {
setup({ dispatch, history }) {
// eslint-disable-line
},
},
effects: {
*asyncAdd(action, { put, call }) {
yield call(delay, 1000);
yield put({ type: "counter/add" });
},
*goto({ payload }, { put }) {
yield put(routerRedux.push(payload));
},
},
reducers: {
add(state, action) {
console.log("state", state);
return {
count: state.count + 1,
};
},
},
};
// index.js
import dva, { connect } from "dva";
import { Router, Route } from "dva/router";
import React from "react";
import "./index.css";
console.log("Router", Route);
// 1. Initialize
const app = dva();
// 2. Plugins
// app.use({});
// 3. Model
app.model(require("./models/example").default);
// 4. Router
// app.router(require("./router").default);
let Counter = connect((state) => state.counter)((props) => {
let { count, dispatch } = props;
console.log("count", props);
return (
<div>
<p>{count}</p>
<button
onClick={() =>
dispatch({
type: "counter/add",
})
}
>
+
</button>
<button onClick={() => dispatch({ type: "counter/asyncAdd" })}>
async +
</button>
<button onClick={() => dispatch({ type: "counter/goto", payload: "/" })}>
goto /
</button>
</div>
);
});
const Home = (props) => <div>home</div>;
app.router(({ history }) => (
<Router history={history}>
{/* Router 下面只能有一个元素 */}
<React.Fragment>
<Route path="/" exact component={Home} />
<Route path="/counter" component={Counter} />
</React.Fragment>
</Router>
));
// 5. Start
app.start("#root");
3.最终查找原因
- 并没有找到具体是因为什么,猜测原因是使用了yarn 重新安装依赖导致
- 如果重新使用npm 安装依赖则恢复正常
++++++++++++++++++++++++++++++++++++++++++++++
经过测试发现,使用dva脚手架生成的项目如果后期使用了yarn安装依赖,就会导致出现该错误
dva使用yarn编译出错的更多相关文章
- Android Studio2.1.2 Java8环境下引用Java Library编译出错
转载请注明出处:http://www.cnblogs.com/LT5505/p/5685242.html 问题:在Android Studio2.1.2+Java8的环境下,引用Java Librar ...
- protobuf编译出错的解决方案(iOS,OSX)
protobuf 最近使用protobuf,变编译工具时遇上一点问题.现在附上解决方案 编译过程 完全参照 https://github.com/alexeyxo/protobuf-objc 编译出错 ...
- Xamarin.iOS编译出错
Xamarin.iOS编译出错 错误信息:C:/Program Files(x86)/Reference Assemblies/Microsoft/Framework/Xamarin.iOS/v1.0 ...
- Cocos2d-x 3.0 编译出错 解决 error: expected ';' at end of member declaration
近期把项目移植到cocos2d-x 3.0,在整Android编译环境的时候,出现一大堆的编译出错,都是类似"error: expected ';' at end of member dec ...
- Weblogic jsp页面编译出错,Weblogic jsp编译异常
Weblogic jsp页面编译出错,Weblogic jsp编译异常 ======================== 蕃薯耀 2018年1月29日 http://www.cnblogs.com/f ...
- 关于Koala 中文编译出错
关于koala: 我们知道koala是一个前端预处理器语言图形编译工具,支持Less.Sass.Compass.CoffeeScript,帮助web开发者更高效地使用它们进行开发.跨平台运行,完美兼容 ...
- codeblocks c++ 编译出错
codeblocks编译出错 今天编译一个c++程序调用模板的时候,出现错误 error This file requires compiler and library support for the ...
- gcc编译出错---make[5]: *** [s-attrtab] Killed
内存不足导致的编译出错,解决方法是增加swapfile. root@ubuntu:home# swapon -s Filename Type Size Used ...
- 关于使用Google Analyse导入库文件编译出错的解决办法.
(最新解决办法):因为要通过cocoapod链接库,那么直接在Podfile上面加上 pod 'GoogleAnalytics-iOS-SDK', '~> 3.0.9',然后在pod insta ...
- STM32F103RB, KEIL编译出错:cannot open preprocessing output output file ".\神舟i号\main.d" no such file or
STM32F103RB, KEIL编译出错:cannot open preprocessing output output file ".\神舟i号\main.d" no su ...
随机推荐
- sqlserver 查看执行计划
-- 清除执行计划缓存 DBCC FREEPROCCACHE -- 查看缓存执行计划 SELECT * FROM sys.dm_exec_cached_plans as p CROSS APPLY s ...
- C语言中的rand()函数实例分析
一 前记: c语言中需要用到随机值得时候,每次都自己写,这样太浪费效率了,这次遇到了一个经典的代码,就珍藏起来吧. 二 实例分析: 1 #include <stdio.h> 2 3 int ...
- Kotlin学习快速入门(9)—— 密封类的使用
原文地址: Kotlin学习快速入门(9)-- 密封类的使用 - Stars-One的杂货小窝 代码逻辑中,很多时候我们会需要分支语句,来根据数据的情况走不同的处理逻辑,而密封类就是在这种情况下,方便 ...
- RabbitMq消息队列进一步认识
参考:https://www.cnblogs.com/wanglijun/p/10896896.html(应用场景) https://blog.csdn.net/weixin_41588751/art ...
- URL URI URN
总结如下: 1.简写: URI (uniform resource identifier)统一资源标志符: URL(uniform resource location )统一资源定位符(或统一资源定位 ...
- 【leetcode 2949 统计美丽子字符串】
import java.util.HashMap; import java.util.Map; class Solution { public static void main(String[] ar ...
- tomcat正常启动,但网页拒绝连接的解决方法
当发生拒绝连接的时候 1.首先要排除端口的占用 上一篇文章已经详细介绍了,这里不再赘述tomcat端口配置 2.设置防火墙放行tomcat 3.配置环境变量 此电脑→属性→高级系统设置→环境变量 点击 ...
- NA嵌入Flutter页面
目录介绍 01.Android承载flutter容器 02.过时的NA跳转flutter方案 03.升级版本NA跳转Flutter处理 04.如何处理NA跳转flutter传参 05.思考遇到的几个问 ...
- .NET Emit 入门教程:第四部分:构建类型(Type)
前言: 在动态生成代码的过程中,构建类型(Type)是至关重要的一步. 通过使用 Emit 中的 TypeBuilder,我们可以定义和创建各种类型,包括类.结构体和接口. 本节将深入探讨如何使用 T ...
- r-nacos v0.4.0版本发布
r-nacos是一个用 rust重新实现的nacos. r-nacos比java实现的nacos更轻量.快速.稳定:合适在开发.测试.受资限服务等环境平替nacos服务使用. r-nacos v0.4 ...