Coder Social home page Coder Social logo

crazyurus / miniprogram-vscode-extension Goto Github PK

View Code? Open in Web Editor NEW
111.0 3.0 21.0 3.49 MB

微信小程序 VSCode 插件,提供预览、打包上传、代码补全、语法高亮等特性

Home Page: https://marketplace.visualstudio.com/items?itemName=crazyurus.miniprogram-vscode-extension

License: GNU General Public License v3.0

JavaScript 42.98% HTML 3.86% EJS 4.30% TypeScript 48.71% Shell 0.15%
miniprogram vscode-extension

miniprogram-vscode-extension's Introduction

微信小程序开发工具

Visual Studio Marketplace Version Visual Studio Marketplace Downloads Visual Studio Marketplace Installs publish

提供预览、打包上传、代码补全、语法高亮、依赖分析、项目模版等功能。可以在面板的底部“微信小程序”处使用,如下图所示。

微信小程序开发工具

功能

代码补全与语法高亮

  • 支持小程序 API 的代码补全
  • 支持 WXML 中组件的代码补全
  • 支持 WXML WXSS WXS 的语法高亮
  • 支持快速创建 PageComponent

预览和上传小程序

  • 支持设置小程序上传目录
  • 支持扫码预览小程序
  • 支持小程序打包并上传到微信后台
  • 支持查看小程序编译产物
  • 支持下载最近上传的 SourceMap

代码分析

  • 支持代码静态依赖分析
  • 支持代码质量分析

项目设置

  • 支持查看和修改项目配置
  • 支持构建 npm
  • 支持查看开发文档
  • 支持打开微信开发者工具 IDE

主题

  • 提供 DarkLight 两种主题
  • 提供图标

组件支持

  • 支持点击自定义组件标签跳转到对应文件
  • 支持点击绑定的函数名跳转到对应函数定义

其它

  • 支持微信小程序开发文档搜索
  • 支持代理设置

常见问题

  1. IDE 默认会寻找项目根目录的 project.config.json。若小程序项目有单独的目录,将无法自动识别,需按照提示选择该文件进行设置。设置完成后会在项目目录下生成 .vscode/settings.json 用于存储。

  2. 微信公众平台 - 开发 - 开发设置 下载代码上传密钥后,一定要关闭 IP 白名单 功能,否则无法正常预览和上传小程序。如果你的设备是静态 IP,也可以在白名单中配置设备 IP 使用(不推荐)。

反馈

创建 Issue

欢迎 Pull Request

Email: [email protected]

致谢

感谢以下开源项目:

部分功能的实现参考了微信开发者工具 IDE

License

GPL-3.0

miniprogram-vscode-extension's People

Contributors

awxiaoxian2020 avatar chenbimo avatar crazyurus avatar dependabot[bot] avatar moheng233 avatar xiongamao avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

miniprogram-vscode-extension's Issues

静态代码分析

你好,只能在微信小程序中分析代码资源吗,普通项目不能用吗

小程序代码上传密钥文件怎么下载

image

在vscode中使用插件需要选择一个文件作为代码上传的密钥,可是我在小程序后台管理页面的 开发管理-开发设置-小程序代码上传 里面只有重置密钥选项,并会得到一串AppSecret,只能复制其密钥的文本,并没有下载文件的选项啊……


image

启动模拟器报这个是什么问题,小白不太明白

SyntaxError parsing statement => case <= : Unexpected token (1:0)
at Parser.pp$5.raise (c:\Users\Administrator.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\babylon\lib\index.js:4454:13)
at Parser.pp.unexpected (c:\Users\Administrator.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\babylon\lib\index.js:1761:8)
at Parser.pp$3.parseExprAtom (c:\Users\Administrator.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\babylon\lib\index.js:3750:12)
at Parser.pp$3.parseExprSubscripts (c:\Users\Administrator.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\babylon\lib\index.js:3494:19)
at Parser.pp$3.parseMaybeUnary (c:\Users\Administrator.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\babylon\lib\index.js:3474:19)
at Parser.pp$3.parseExprOps (c:\Users\Administrator.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\babylon\lib\index.js:3404:19)
at Parser.pp$3.parseMaybeConditional (c:\Users\Administrator.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\babylon\lib\index.js:3381:19)
at Parser.pp$3.parseMaybeAssign (c:\Users\Administrator.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\babylon\lib\index.js:3344:19)
at Parser.pp$3.parseExpression (c:\Users\Administrator.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\babylon\lib\index.js:3306:19)
at Parser.pp$1.parseStatement (c:\Users\Administrator.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\babylon\lib\index.js:1906:19) {
pos: 0,
loc: Position { line: 1, column: 0 }
}

启动模拟器失败

Error parsing statement => wxs.Mtrltypeimage(type.mtrltypeid) <= : Unknown Type: CallExpression
at walk (c:\Users\ee160.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\wxml-transpiler\build.js:1:6033)
at walk (c:\Users\ee160.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\wxml-transpiler\build.js:1:4139)
at walk (c:\Users\ee160.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\wxml-transpiler\build.js:1:4079)
at walk (c:\Users\ee160.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\wxml-transpiler\build.js:1:3943)
at walkExp (c:\Users\ee160.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\wxml-transpiler\build.js:1:6142)
at parseExp (c:\Users\ee160.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\wxml-transpiler\build.js:1:6338)
at parseText (c:\Users\ee160.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\wxml-transpiler\build.js:1:3639)
at pushProp (c:\Users\ee160.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\wxml-transpiler\build.js:1:22554)
at processAttrs (c:\Users\ee160.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\wxml-transpiler\build.js:1:21885)
at Object.start (c:\Users\ee160.vscode\extensions\crazyurus.miniprogram-vscode-extension-1.3.6\node_modules\wxml-transpiler\build.js:1:17799) {
name: 'Error parsing statement => wxs.Mtrltypeimage(type.mtrltypeid) <= '
}

预览小程序失败

是不是我的文件目录出了问题,可是我是用小程序的ide建的默认demo。
报错信息如下
image
image

子目录作为微信小程序的工作目录

您好@crazyurus. 我遇到的问题类似 Issue #19.
我的工程目录包含server和client两部分, 微信小程序作为我的客户端, 源码放在client子目录下. 工程目录类似于:

root
├ .vscode
│  └ settings.json
├ client
│  ├ pages/index
│  │  ├ index.js
│  │  ├ index.json
│  │  ├ index.wxml
│  │  └ index.wxss
│  ├ app.js
│  ├ app.json
│  ├ app.wxss
│  └ project.config.json
└ server

如果我在根目录root下打开vscode, 会报错并提示:

Command 'MiniProgram: 预览小程序' resulted in an error (command 'MiniProgram.commands.compile.preview' not found)

请问我该如何指定client子目录为微信小程序的工作目录? 可以通过.vscode/setting.json完成配置吗?

扫码预览小程序失败

扫码预览小程序失败

查看报错信息要是因为使用了可选链操作符(?.)
但是project.config.json中"es6"配置了true,
相同的代码现在使用微信开发者工具编译本地预览就没有问题

如何修改wxml代码补全?

如何修改wxml代码补全的内容。
例如:view组件不需要补全里面的内容
`<view
hover-class="{{hover-class}}"
hover-stop-propagation="{{hover-stop-propagation}}"
hover-start-time="{{hover-start-time}}"
hover-stay-time="{{hover-stay-time}}"

`

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.