版本信息:

  • 微信开发者工具:1.03.2101150
  • wepy:2.0
  • wepy/cli:6.14.8

问题描述

按照 wepy 文档中的步骤新建项目:

$ npm install @wepy/cli -g # 全局安装 WePY CLI 工具
$ wepy init standard myproj # 使用 standard 模板初始化项目
$ cd myproj # 进入到项目目录
$ npm install # 安装项目依赖包

使用开发者工具导入 myproj 根目录,即可预览效果。

但我使用开发者工具导入项目后,控制台报错:[ app.json 文件内容错误] app.json: app.json 未找到

上网搜索了一下,看到很多人提到了一个方法:

project.config.json文件中添加如下代码后从新编译即可:

"miniprogramRoot": "./dist"

然后我这里的报错变成了:[ app.json 文件内容错误] dist/app.json: dist/app.json 未找到

解决方法

虽然没有成功解决问题,但有人提到:出现这个问题的原因是微信开发者工具导入项目时修改了 project.config.json 文件。

用 cli 重新新建一个项目,不用微信开发者工具导入,直接打开 project.config.json 文件,内容如下:

{
"description": "A WePY project",
"setting": {
"urlCheck": true,
"es6": false,
"postcss": false,
"minified": false
},
"compileType": "miniprogram",
"appid": "touristappid",
"projectname": "myproj",
"miniprogramRoot": "./weapp"
}

可以注意到这一行:"miniprogramRoot": "./weapp"。将这行添加到导入到开发者工具的项目对应文件中,即可正常编译预览。

整个weapp都是自动生成的项目中没有的。根据里面文件的内容,可以看出是由组件化开发的 .wpy 等文件翻译成的小程序原生的 js/json/wxml/wxss 等对应文件,包括程序入口 app 系列文件。

其他文章中提到的 ./dist 可能是 cli 其他版本生成的不同文件结构。


21.02.21 更新

之前这个方法暂时解决了一个报错,但是发现又出现了新的一些bug,比如组件不能正确渲染、找不到页面、点击事件触发失败等等,如下(wepy的demo项目)。

关闭ES5转ES6

在小程序开发工具中,把详情-本地设置-ES6转ES5 设置关掉可以解决部分问题,原因不明。

重新导入项目

关闭上述这个转换之后还是有一些问题。后来又发现一个玄学解决办法,是目前为止看起来最简单可靠的办法:

之前在小程序开发工具中导入的是 myproj 的根目录。用其他编辑器(例如 VS Code)打开项目根目录并启动项目,如果编译成功(控制台指令和输出如下),项目中会生成 ./weapp 目录,就是第一个方法中添加在配置文件中的那个目录。

在小程序开发工具中导入项目时选择这个生成的 weapp 目录,即可正确编译和渲染。并且在VSC中修改保存wepy的代码之后,小程序开发工具这边也会自动更新(npm 检测到代码变动后自动重新编译)。

$ npm run dev

> bj_mini_program@0.0.2 dev E:\0_project\sk_BulletJournal\BJ_miniProgram
> wepy build --watch # ... [20:13:05] info build finished
[20:13:05] info watching...

参考

http://www.webxlab.net/article/detail/VBgKvl7ALW

微信开发者工具导入 wepy 项目“app.json 未找到”报错解决方法的更多相关文章

  1. 记web模拟手机环境已经微信开发者工具中可正常运行,实体机运行报错问题

    问题描述: 有个手机微信OA的项目 用户信息采用cookie方式保存.发布后使用chorme浏览器进行模拟访问测试发现一切运行顺畅,使用微信开发者工具进行测试也一切正常. 采用实体机进行测试时,用微信 ...

  2. 导入项目后,js文件报错解决方法

    导入项目后,发现 js文件报错,但是js文件是从官网下载的.解决办法: 选中报错的js文件, 右键选择 MyEclipse-->Exclude From Validation : 然后继续右键执 ...

  3. Eclipse导入maven项目时,pom-xml文件报错处理方法

    报错如下: Cannot read lifecycle mapping metadata for artifact org.apache.maven.plugins 解决方法: 出现该错误是因为jar ...

  4. 导入Maven 工程pom.xml首行报错解决方法

    1.利用IDE导入一个Maven工程,但是pom.xml文件首行报错,发现是maven版本需要升级 2.在pom.xml文件 增加配置 <properties> <maven-jar ...

  5. 微信开发者工具:Cannot read property 'addEventListener' of undefined 报错

    点击右上角详情 有个调试基础库 当前为2.17.0 调为2.14.1 解决 如果对您有帮助,希望对面的你能点赞加评论!拜上! 若有bug还请告知,万分感谢!

  6. eclipse创建的maven项目,pom.xml文件报错解决方法

    [错误一:]maven 编译级别过低 [解决办法:] 使用 maven-compiler-plugin 将 maven 编译级别改为 jdk1.6 以上: <!-- java编译插件 --> ...

  7. MyEclipse导入Maven项目pom文件第一行报错,运行Tomcat报Log4j错误--解决方法

    问题描述: 前一段时间电脑第一次导入Maven项目,又是pom文件错,改好后又是运行Tomcat报Log4j错误,一直倒腾了近一个月程序才成功跑起来,太不容易. 也上网查了很长时间,没一个方法能解决我 ...

  8. Eclipse中导入项目后js报错解决方法(转未解决问题)

    本文转自:http://blog.csdn.net/chenchunlin526/article/details/54666882 Eclipse中导入项目后js报错的原因与解决方法 在我们将项目导入 ...

  9. eclipse导入项目报错解决方法

    1.导入项目之前,请确认工作空间编码已设置为utf-8:window->Preferences->General->Wrokspace->Text file encoding- ...

随机推荐

  1. PDF transform to PPT online & free

    PDF transform to PPT online & free > Speaker Deck Share Presentationswithout the Mess Speaker ...

  2. js & while & do while

    js & while & do while https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Stat ...

  3. HTTP 协议的前世今生

    尽人事,听天命.博主东南大学研究生在读,热爱健身和篮球,正在为两年后的秋招准备中,乐于分享技术相关的所见所得,关注公众号 @ 飞天小牛肉,第一时间获取文章更新,成长的路上我们一起进步 本文已收录于 C ...

  4. C++算法代码——选举学生会

    题目来自:https://www.luogu.com.cn/problem/P1271 题目描述 学校正在选举学生会成员,有 n(n\le 999)n(n≤999) 名候选人,每名候选人编号分别从 1 ...

  5. TypeError: Object of type 'datetime' is not JSON serializable

    我的描述:我在flask框架中引用orm查数据库并返回数据,出现此类问题,如下图: 解决方案: 1.从表面意思看,就是说datetime时间类型无法被序列化.于是我百度了网上的同事的解答,大多说是时间 ...

  6. CSS中Position属性static、absolute、fixed、relative

    在html中网页可以看成一个立体的空间,一个完整的页面是由很多个页面堆积形成的,如下图所示   CSS中Position属性有四个可选值,它们分别是:static.absolute.fixed.rel ...

  7. ELK的一点认识

    为什么需要ELK: 一般大型系统是一个分布式部署的架构,不同的服务模块部署在不同的服务器上,问题出现时,大部分情况需要根据问题暴露的关键信息,定位到具体的服务器和服务模块,构建一套集中式日志系统,可以 ...

  8. springboot框架里的pom.xml文件里的m不显示,只有标红和<>符号的解决方法

    这是因为没有把pom.xml文件加入到maven工程中,所以需要如图所示 亲测有效,原文链接:https://blog.csdn.net/qq_41026946/article/details/107 ...

  9. C语言:试探算法解决“八皇后”问题

    #include <stdio.h> #define N 4 int solution[N], j, k, count, sols; int place(int row, int col) ...

  10. 解决使用Redis时配置 fastjson反序列化报错 com.alibaba.fastjson.JSONException: autoType is not support

    1.问题描述 在使用redis时,配置自定义序列化redisTemplate为FastJsonRedisSerializer .  1 /** 2 * 自定义redis序列化器 3 */ 4 @Sup ...