All Projects → tinajs → Mina Webpack

tinajs / Mina Webpack

🍱 Mina single-file-component meets Webpack

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Mina Webpack

Tina
💃 一款轻巧的渐进式微信小程序框架
Stars: ✭ 1,153 (+1397.4%)
Mutual labels:  wechat-mini-program, wxml, mina, wechat, weixin, wxss
Wuss Weapp
🐳wuss-weapp 一款高质量,组件齐全,高自定义的微信小程序UI组件库
Stars: ✭ 338 (+338.96%)
Mutual labels:  wxml, wechat, weixin, wxss
Wxapp Webpack Plugin
📦 微信小程序 webpack 插件
Stars: ✭ 185 (+140.26%)
Mutual labels:  wechat-mini-program, webpack, wechat, weixin
Wemark
微信小程序Markdown渲染库
Stars: ✭ 1,159 (+1405.19%)
Mutual labels:  wxml, wechat, weixin, wxss
Wxapp Boilerplate
使用 webpack, babel, scss 开发的微信/支付宝小程序项目脚手架
Stars: ✭ 367 (+376.62%)
Mutual labels:  wechat-mini-program, webpack, wechat
Wepy Mall
微信小程序--基于wepy 商城(微店)微信小程序 欢迎学习交流
Stars: ✭ 3,224 (+4087.01%)
Mutual labels:  wechat-mini-program, wechat, weixin
Wxappunpacker
wxml被“编译“后”压缩“一下多好!😀
Stars: ✭ 4,487 (+5727.27%)
Mutual labels:  wxml, wechat, wxss
Planmaster
套餐助手:手机套餐对比选购小程序
Stars: ✭ 487 (+532.47%)
Mutual labels:  wechat-mini-program, wechat, weixin
Quietweather
☀️ Develop a weather wechat mini program application in two days - 两天撸一个天气应用微信小程序
Stars: ✭ 677 (+779.22%)
Mutual labels:  wechat-mini-program, wechat, weixin
Juejin
💰 Unofficial JueJin wechat mini program application - 掘金非官方微信小程序
Stars: ✭ 771 (+901.3%)
Mutual labels:  wechat-mini-program, wechat, weixin
Taro
开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5/React Native 等应用。 https://taro.zone/
Stars: ✭ 30,230 (+39159.74%)
Mutual labels:  wechat-mini-program, wechat, weixin
Weixin Minigame Tutorial
Flappy Bird adaptation on Wechat Minigame using PhaserJS + English Wechat Minigames Tutorial
Stars: ✭ 56 (-27.27%)
Mutual labels:  wechat-mini-program, wechat, weixin
Taro scaffold
基于 Taro / dva / redux-saga / react 的微信小程序脚手架,同时集成了 sprite 。
Stars: ✭ 24 (-68.83%)
Mutual labels:  wechat-mini-program, wechat, weixin
Agora Miniapp Tutorial
Hello world for Agora SDK running in https://en.wikipedia.org/wiki/WeChat#WeChat_Mini_Program
Stars: ✭ 75 (-2.6%)
Mutual labels:  wechat-mini-program, wechat, weixin
Weapp demos
持续更新中的微信小程序和小游戏的源码案例库。目前涵盖了120多个微信小程序或小游戏。
Stars: ✭ 2,466 (+3102.6%)
Mutual labels:  wechat-mini-program, wxml, wxss
Crmeb wechatminiprogram
CRMEBv2.6以客户管理为中心+电商营销系统,微信小程序商城,带分销、秒杀、积分、优惠券等功能
Stars: ✭ 158 (+105.19%)
Mutual labels:  wechat-mini-program, wechat, weixin
Tina Hackernews
📺 A Tina.js powered Wechat-Mini-Program implementation of Hacker News Reader
Stars: ✭ 93 (+20.78%)
Mutual labels:  wechat-mini-program, mina, wechat
Vscode Miniapp Helper
微信小程序开发助手 for VSCode
Stars: ✭ 137 (+77.92%)
Mutual labels:  wechat-mini-program, wxml, wechat
Weixin Java Miniapp Demo
基于Spring Boot 和 WxJava 实现的微信小程序Java后端Demo
Stars: ✭ 779 (+911.69%)
Mutual labels:  wechat-mini-program, wechat, weixin
Mpvue Loader
mpvue loader
Stars: ✭ 47 (-38.96%)
Mutual labels:  webpack, wxml, wxss

mina-webpack

Mina single-file-component meets Webpack

Build Status PRs Welcome FOSSA Status

Get Started

We recommend you to get started with template-mina:

npm i -g sao

sao mina my-app
cd my-app
npm start

And see how to use with TinaJS

Packages included

Manual Installation

npm i --save-dev \
  @tinajs/mina-entry-webpack-plugin \
  @tinajs/mina-runtime-webpack-plugin \
  @tinajs/mina-loader \
  @tinajs/wxs-loader

Simplest Usage

webpack.config.js:

const webpack = require("webpack");
const MinaEntryPlugin = require("@tinajs/mina-entry-webpack-plugin");
const MinaRuntimePlugin = require("@tinajs/mina-runtime-webpack-plugin");
const resolve = require("path").resolve;

module.exports = {
  context: resolve("src"),
  entry: "./app.mina",
  output: {
    path: resolve("dist"),
    filename: "[name]",
    publicPath: "/",
    globalObject: "wx"
  },
  module: {
    rules: [
      {
        test: /\.mina$/,
        use: {
          loader: "@tinajs/mina-loader",
          options: {
            loaders: {
              script: "babel-loader"
            }
          }
        }
      },
      {
        test: /\.wxs$/,
        use: [
          {
            loader: '@tinajs/wxs-loader',
            options: {
              name: 'wxs/[name].[hash:6].[ext]',
            },
          },
        ],
      },
    ]
  },
  plugins: [
    new MinaEntryPlugin({
      map: entry => ["es6-promise/dist/es6-promise.auto.js", entry]
    }),
    new MinaRuntimePlugin()
  ],
  optimization: {
    splitChunks: {
      chunks: 'all',
      name: "common.js",
      minChunks: 2,
      minSize: 0
    },
    runtimeChunk: {
      name: "runtime.js"
    }
  },
  mode: "none"
};

app.mina:

<config>
{
  "pages": [
    "page.mina"
  ]
}
</config>

<script>
require('./dependency.js')
App({
  onLaunch () {
    console.log(say({ text: 'Hello from App!' }))
  }
})
</script>

page.mina:

<config>
{
  "window":{
    "navigationBarTitleText": "Hello, World!"
  }
}
</config>

<style>
.blue {
  color: #00f;
}
</style>

<template>
  <view>
    <text class="blue">{{ msg }}</text>
  </view>
</template>

<script>
require('./dependency.js')
Page({
  onLoad () {
    this.setData({
      msg: 'Hello from Page!',
    })
  },
})
</script>

Examples

Related Projects

Best to use with

Scaffolds

Other package compiler (also alternatives)

Got inspiration from

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].