upload examples (#78)
diff --git a/examples/single-vue-to-js-example/README.md b/examples/single-vue-to-js-example/README.md
new file mode 100644
index 0000000..c3f02eb
--- /dev/null
+++ b/examples/single-vue-to-js-example/README.md
@@ -0,0 +1,38 @@
+This example is a template using webpack and weexLoader to convert single vue file to js file.
+
+If you want to convert vue file to js file, please follow the below steps.
+
+### Usage
+
+1. execute `npm install` in terminal
+
+2. copy the vue file to current directory
+
+3. update the content of `webpack.config.js`
+
+ ```js
+ entry: {
+ '<output-filename-without-js-extension>': '<input-file-path-with-filename>?entry=true'
+ },
+ output: {
+ path: path.resolve(__dirname, '<output-path>')
+ }
+ ```
+
+ for example, the below config convert `App.vue` to `e2e-landing.js` in current directory.
+
+ ```javascript
+ entry: {
+ // you should keep ?entry=true and you should give ./
+ 'e2e-landing': './App.vue?entry=true'
+ },
+ output: {
+ path: path.resolve(__dirname, './')
+ }
+ ```
+
+4. execute `npm run build:weex` in terminal.
+
+5. Done!
+
+The output file is what you wanted.
\ No newline at end of file
diff --git a/examples/single-vue-to-js-example/build/build-weex.js b/examples/single-vue-to-js-example/build/build-weex.js
new file mode 100644
index 0000000..d239546
--- /dev/null
+++ b/examples/single-vue-to-js-example/build/build-weex.js
@@ -0,0 +1,21 @@
+var webpack = require('webpack');
+var chalk = require('chalk');
+var webpackConfig = require('./webpack.weex.prod.conf');
+
+webpack(webpackConfig,function (err, stats) {
+ if (err) {
+ throw err
+ }
+ process.stdout.write(stats.toString({
+ colors: true,
+ modules: false,
+ children: false,
+ chunks: false,
+ chunkModules: false
+ }) + '\n\n')
+
+ console.log(chalk.cyan(' Build complete.\n'))
+ console.log(chalk.yellow(
+ ' Tip: weex bundle.js \n'
+ ))
+});
diff --git a/examples/single-vue-to-js-example/build/webpack.weex.prod.conf.js b/examples/single-vue-to-js-example/build/webpack.weex.prod.conf.js
new file mode 100644
index 0000000..7b52188
--- /dev/null
+++ b/examples/single-vue-to-js-example/build/webpack.weex.prod.conf.js
@@ -0,0 +1,31 @@
+var webpack = require('webpack');
+var baseWebpackConfig = require('../webpack.config.js');
+var merge = require('webpack-merge');
+
+var webacpkConfig = require('../config');
+var FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin');
+if (!process.env.NODE_ENV) {
+ process.env.NODE_ENV = JSON.parse(webacpkConfig.weexBuild.env.NODE_ENV)
+}
+var env = process.env.NODE_ENV;
+
+if (env === 'production'){
+ baseWebpackConfig.output.filename = '[name].js';
+}
+
+module.exports = merge(baseWebpackConfig,{
+ plugins: [
+ new webpack.DefinePlugin({
+ 'process.env': JSON.stringify(env)
+ }),
+ new webpack.optimize.UglifyJsPlugin({
+ compress: {
+ warnings: false
+ }
+ }),
+ new webpack.BannerPlugin({
+ raw: true ,
+ banner: '// { "framework": "Vue" }\n'
+ })
+ ]
+});
diff --git a/examples/single-vue-to-js-example/config/dev.env.js b/examples/single-vue-to-js-example/config/dev.env.js
new file mode 100644
index 0000000..efead7c
--- /dev/null
+++ b/examples/single-vue-to-js-example/config/dev.env.js
@@ -0,0 +1,6 @@
+var merge = require('webpack-merge')
+var prodEnv = require('./prod.env')
+
+module.exports = merge(prodEnv, {
+ NODE_ENV: '"development"'
+})
diff --git a/examples/single-vue-to-js-example/config/index.js b/examples/single-vue-to-js-example/config/index.js
new file mode 100644
index 0000000..e93f074
--- /dev/null
+++ b/examples/single-vue-to-js-example/config/index.js
@@ -0,0 +1,47 @@
+// see http://vuejs-templates.github.io/webpack for documentation.
+var path = require('path')
+
+module.exports = {
+ build: {
+ env: require('./prod.env'),
+ index: path.resolve(__dirname, '../dist/index.html'),
+ assetsRoot: path.resolve(__dirname, '../dist'),
+ assetsSubDirectory: 'static',
+ assetsPublicPath: '/',
+ productionSourceMap: true,
+ // Gzip off by default as many popular static hosts such as
+ // Surge or Netlify already gzip all static assets for you.
+ // Before setting to `true`, make sure to:
+ // npm install --save-dev compression-webpack-plugin
+ productionGzip: false,
+ productionGzipExtensions: ['js', 'css'],
+ // Run the build command with an extra argument to
+ // View the bundle analyzer report after build finishes:
+ // `npm run build --report`
+ // Set to `true` or `false` to always turn it on or off
+ bundleAnalyzerReport: process.env.npm_config_report
+ },
+ dev: {
+ env: require('./dev.env'),
+ port: 8080,
+ autoOpenBrowser: true,
+ assetsSubDirectory: 'static',
+ assetsPublicPath: '/',
+ proxyTable: {},
+ // CSS Sourcemaps off by default because relative paths are "buggy"
+ // with this option, according to the CSS-Loader README
+ // (https://github.com/webpack/css-loader#sourcemaps)
+ // In our experience, they generally work as expected,
+ // just be aware of this issue when enabling this option.
+ cssSourceMap: false
+ },
+ weexDev: {
+ env: require('./dev.env'),
+ port: 8089,
+ assetsSubDirectory: 'dist',
+ assetsPublicPath: '/'
+ },
+ weexBuild: {
+ env: require('./prod.env')
+ }
+}
diff --git a/examples/single-vue-to-js-example/config/prod.env.js b/examples/single-vue-to-js-example/config/prod.env.js
new file mode 100644
index 0000000..773d263
--- /dev/null
+++ b/examples/single-vue-to-js-example/config/prod.env.js
@@ -0,0 +1,3 @@
+module.exports = {
+ NODE_ENV: '"production"'
+}
diff --git a/examples/single-vue-to-js-example/package.json b/examples/single-vue-to-js-example/package.json
new file mode 100644
index 0000000..0076425
--- /dev/null
+++ b/examples/single-vue-to-js-example/package.json
@@ -0,0 +1,20 @@
+{
+ "name": "vuetojs",
+ "version": "1.0.0",
+ "description": "",
+ "main": "index.js",
+ "scripts": {
+ "build:weex": "npm run release:weex",
+ "release:weex": "node build/build-weex.js"
+ },
+ "author": "renmin",
+ "license": "ISC",
+ "dependencies": {
+ "babel-loader": "^8.0.6",
+ "weex-loader": "^0.7.12",
+ "webpack": "^2.2.1",
+ "friendly-errors-webpack-plugin": "^1.1.3",
+ "webpack-merge": "^2.6.1",
+ "chalk": "^1.1.3"
+ }
+}
diff --git a/examples/single-vue-to-js-example/webpack.config.js b/examples/single-vue-to-js-example/webpack.config.js
new file mode 100644
index 0000000..2ac57da
--- /dev/null
+++ b/examples/single-vue-to-js-example/webpack.config.js
@@ -0,0 +1,32 @@
+var webpack = require('webpack');
+var path = require('path');
+
+function resolve (dir) {
+ return path.join(__dirname, '..', dir)
+}
+
+var config = {
+
+ entry: {
+ 'e2e-landing': './App.vue?entry=true'
+ },
+ output: {
+ path: path.resolve(__dirname, './')
+ },
+ module: {
+ rules: [
+ {
+ test: /\.vue(\?[^?]+)?$/,
+ loaders: ['weex-loader'],
+ exclude: /node_modules/
+ },
+ {
+ test: /\.js$/,
+ loaders: ['babel-loader'],
+ exclude: /node_modules/
+ }
+ ]
+ }
+};
+
+module.exports = config;