diff --git a/examples/README.md b/examples/README.md index 38a79edf2c..061970438c 100644 --- a/examples/README.md +++ b/examples/README.md @@ -25,4 +25,4 @@ npm run build * app-lifecycle: 使用 app 生命周期 * page-lifecycle-with-router: 使用 page 生命周期 + 路由跳转 * event-handler: 事件绑定(编译时小程序) - +* get-element: document/element getElementXXX 相关 API diff --git a/examples/get-element/.eslintrc.js b/examples/get-element/.eslintrc.js new file mode 100644 index 0000000000..04f3c852d6 --- /dev/null +++ b/examples/get-element/.eslintrc.js @@ -0,0 +1,3 @@ +module.exports = { + extends: ['rax'] +}; \ No newline at end of file diff --git a/examples/get-element/.gitignore b/examples/get-element/.gitignore new file mode 100644 index 0000000000..50a53daceb --- /dev/null +++ b/examples/get-element/.gitignore @@ -0,0 +1,17 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +*~ +*.swp +*.log + +.DS_Store +.idea/ +.temp/ + +build/ +dist/ +lib/ +coverage/ +node_modules/ + +template.yml diff --git a/examples/get-element/README.md b/examples/get-element/README.md new file mode 100644 index 0000000000..94c45d1ddc --- /dev/null +++ b/examples/get-element/README.md @@ -0,0 +1,15 @@ +# rax-materials-basic-app + +## Getting Started + +### `npm run start` + +Runs the app in development mode. + +Open [http://localhost:9999](http://localhost:9999) to view it in the browser. + +The page will reload if you make edits. + +### `npm run build` + +Builds the app for production to the `build` folder. diff --git a/examples/get-element/abc.json b/examples/get-element/abc.json new file mode 100644 index 0000000000..f9ee40f714 --- /dev/null +++ b/examples/get-element/abc.json @@ -0,0 +1,7 @@ +{ + "type": "rax", + "builder": "@ali/builder-rax-v1", + "info": { + "raxVersion": "1.x" + } +} diff --git a/examples/get-element/build.json b/examples/get-element/build.json new file mode 100644 index 0000000000..01a37c18e1 --- /dev/null +++ b/examples/get-element/build.json @@ -0,0 +1,20 @@ +{ + "inlineStyle": false, + "plugins": [ + [ + "build-plugin-rax-app", + { + "targets": [ + "miniapp", + "wechat-miniprogram" + ], + "miniapp": { + "buildType": "runtime" + }, + "wechat-miniprogram": { + "buildType": "runtime" + } + } + ] + ] +} diff --git a/examples/get-element/package.json b/examples/get-element/package.json new file mode 100644 index 0000000000..7d0a89bc64 --- /dev/null +++ b/examples/get-element/package.json @@ -0,0 +1,33 @@ +{ + "name": "@rax-materials/scaffolds-app-js", + "author": "rax", + "description": "Rax 无线跨端应用工程,使用 JavaScript。", + "version": "0.1.0", + "scripts": { + "build": "build-scripts build", + "start": "build-scripts start", + "lint": "eslint --ext .js --ext .jsx ./" + }, + "dependencies": { + "rax": "^1.1.0", + "rax-app": "^2.0.0", + "driver-universal": "^3.0.0", + "rax-image": "^2.0.0", + "rax-link": "^1.0.1", + "rax-text": "^1.0.0", + "rax-view": "^1.0.0", + "rax-document": "^0.1.0" + }, + "devDependencies": { + "@alib/build-scripts": "^0.1.0", + "babel-eslint": "^10.0.3", + "build-plugin-rax-app": "^5.0.0", + "eslint": "^6.8.0", + "eslint-config-rax": "^0.1.0", + "eslint-plugin-import": "^2.20.0", + "eslint-plugin-module": "^0.1.0", + "eslint-plugin-react": "^7.18.0" + }, + "private": true, + "originTemplate": "@rax-materials/scaffolds-app-js" +} diff --git a/examples/get-element/src/app.js b/examples/get-element/src/app.js new file mode 100644 index 0000000000..d78985c28d --- /dev/null +++ b/examples/get-element/src/app.js @@ -0,0 +1,28 @@ +import { runApp, useAppLaunch, useAppShow, useAppHide, useAppShare, useAppError } from 'rax-app'; +import appConfig from './app.json'; + +useAppLaunch((options) => { + console.log('app launch', options); +}); + +useAppShow((options) => { + console.log('app show', options); +}); + +useAppHide(() => { + console.log('app hide'); +}); + +useAppShare(() => { + return { + title: '分享标题', + desc: '分享详细说明', + path: 'pages/Home/index' + }; +}); + +useAppError(() => { + console.log('app error'); +}); + +runApp(appConfig); diff --git a/examples/get-element/src/app.json b/examples/get-element/src/app.json new file mode 100644 index 0000000000..ffbc0add84 --- /dev/null +++ b/examples/get-element/src/app.json @@ -0,0 +1,11 @@ +{ + "routes": [ + { + "path": "/", + "source": "pages/Home/index" + } + ], + "window": { + "title": "Rax App" + } +} diff --git a/examples/get-element/src/components/Logo/index.css b/examples/get-element/src/components/Logo/index.css new file mode 100644 index 0000000000..2f8d8d1144 --- /dev/null +++ b/examples/get-element/src/components/Logo/index.css @@ -0,0 +1,5 @@ +.logo { + width: 200rpx; + height: 180rpx; + margin-bottom: 20rpx; +} \ No newline at end of file diff --git a/examples/get-element/src/components/Logo/index.jsx b/examples/get-element/src/components/Logo/index.jsx new file mode 100644 index 0000000000..ef191bc442 --- /dev/null +++ b/examples/get-element/src/components/Logo/index.jsx @@ -0,0 +1,15 @@ +import { createElement } from 'rax'; +import Image from 'rax-image'; + +import './index.css'; + +export default (props) => { + const { uri } = props; + const source = { uri }; + return ( + + ); +}; diff --git a/examples/get-element/src/document/index.jsx b/examples/get-element/src/document/index.jsx new file mode 100644 index 0000000000..ae0b8d0cdb --- /dev/null +++ b/examples/get-element/src/document/index.jsx @@ -0,0 +1,21 @@ +import { createElement } from 'rax'; +import { Root, Style, Script} from 'rax-document'; + +function Document() { + return ( + + + + + rax-materials-basic-app +