You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by cx...@apache.org on 2017/03/16 08:59:39 UTC

[44/50] incubator-weex git commit: * [doc] Update cn docs, all changes are shown below:

* [doc] Update cn docs, all changes are shown below:

- Weex supports horizontalpan/verticalpan currently;
- weex-toolkit@release supports Vue 2.0 template;
- Fix typo.


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/f6838783
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/f6838783
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/f6838783

Branch: refs/heads/master
Commit: f683878399471b8171127983ec078cf22879328b
Parents: 9dd6bdd
Author: Yun Dong <yu...@gmail.com>
Authored: Tue Mar 7 14:31:02 2017 +0800
Committer: Yun Dong <yu...@gmail.com>
Committed: Tue Mar 7 14:31:02 2017 +0800

----------------------------------------------------------------------
 doc/source/cn/guide/set-up-env.md               |   8 +-
 doc/source/cn/guide/tools/weexpack.md           |   2 +-
 .../cn/references/advanced/extend-to-ios.md     | 231 ++++++++++---------
 doc/source/cn/references/components/cell.md     |   2 +-
 doc/source/cn/references/gesture.md             |   3 +-
 doc/source/guide/intro/devtools.md              | 100 --------
 doc/source/guide/set-up-env.md                  |   2 +-
 doc/source/guide/tools/weexpack.md              |   2 +
 8 files changed, 131 insertions(+), 219 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f6838783/doc/source/cn/guide/set-up-env.md
----------------------------------------------------------------------
diff --git a/doc/source/cn/guide/set-up-env.md b/doc/source/cn/guide/set-up-env.md
index 79ff249..5d77a45 100644
--- a/doc/source/cn/guide/set-up-env.md
+++ b/doc/source/cn/guide/set-up-env.md
@@ -12,7 +12,7 @@ has_chapter_content: true
 
 ## \u7b2c\u4e00\u6b65\uff1a\u5b89\u88c5\u4f9d\u8d56
 
-Weex \u5b98\u65b9\u63d0\u4f9b\u4e86 weex-toolkit \u7684\u811a\u624b\u67b6\u5de5\u5177\u6765\u8f85\u52a9\u5f00\u53d1\u548c\u8c03\u8bd5\u3002\u9996\u5148\uff0c\u4f60\u9700\u8981 Node.js \u548c weex-toolkit\u3002
+Weex \u5b98\u65b9\u63d0\u4f9b\u4e86 weex-toolkit \u7684\u811a\u624b\u67b6\u5de5\u5177\u6765\u8f85\u52a9\u5f00\u53d1\u548c\u8c03\u8bd5\u3002\u9996\u5148\uff0c\u4f60\u9700\u8981 Node.js \u548c [Weex CLi](https://github.com/weexteam/weex-toolkit)\u3002
 
 \u5b89\u88c5 Node.js \u65b9\u5f0f\u591a\u79cd\u591a\u6837\uff0c\u6700\u7b80\u5355\u7684\u65b9\u5f0f\u662f\u5728 [Node.js \u5b98\u7f51](https://nodejs.org/en/) \u4e0b\u8f7d\u53ef\u6267\u884c\u7a0b\u5e8f\u76f4\u63a5\u5b89\u88c5\u5373\u53ef\u3002
 
@@ -46,12 +46,14 @@ $ weex -v
 v1.0.3
 weex-builder : v0.2.4
 weex-previewer : v1.3.4
-```	  
+```
+
 
 \u56fd\u5185\u5f00\u53d1\u8005\u53ef\u4ee5\u8003\u8651\u4f7f\u7528\u6dd8\u5b9d\u7684 npm \u955c\u50cf \u2014\u2014 [cnpm](https://npm.taobao.org/) \u5b89\u88c5 weex-toolkit
 
+
 ```bash
-$ npm install -g cnpm
+$ npm install -g cnpm --registry=https://registry.npm.taobao.org
 $ cnpm install -g weex-toolkit
 ```
 

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f6838783/doc/source/cn/guide/tools/weexpack.md
----------------------------------------------------------------------
diff --git a/doc/source/cn/guide/tools/weexpack.md b/doc/source/cn/guide/tools/weexpack.md
index ac64dd7..ee1a26c 100644
--- a/doc/source/cn/guide/tools/weexpack.md
+++ b/doc/source/cn/guide/tools/weexpack.md
@@ -372,7 +372,7 @@ weexplugin
 
 ## \u63d2\u4ef6\u5f00\u53d1\u6587\u6863
 
-+ [\u5f00\u53d1 web \u7684\u63d2\u4ef6\u6559\u7a0b](./doc/plugin-devloping-web.md)
++ [\u5f00\u53d1 web \u7684\u63d2\u4ef6\u6559\u7a0b](https://github.com/weexteam/weex-pack/blob/master/doc/plugin-devloping-web.md)
 
 
 ## \u793a\u4f8b

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f6838783/doc/source/cn/references/advanced/extend-to-ios.md
----------------------------------------------------------------------
diff --git a/doc/source/cn/references/advanced/extend-to-ios.md b/doc/source/cn/references/advanced/extend-to-ios.md
index 4edecf4..25872bb 100644
--- a/doc/source/cn/references/advanced/extend-to-ios.md
+++ b/doc/source/cn/references/advanced/extend-to-ios.md
@@ -11,119 +11,126 @@ version: 2.1
 
 Weex SDK \u53ea\u63d0\u4f9b\u6e32\u67d3\uff0c\u800c\u4e0d\u662f\u5176\u4ed6\u7684\u80fd\u529b\uff0c\u5982\u679c\u4f60\u9700\u8981 \u50cf\u7f51\u7edc\uff0c\u56fe\u7247\uff0cURL\u8df3\u8f6c\u8fd9\u4e9b\u7279\u6027\uff0c\u9700\u8981\u81ea\u5df1\u52a8\u624b\u5b9e\u73b0\u4ed6\u4eec
 \u4f8b\u5982\uff0c\u5982\u679c\u4f60\u60f3\u5b9e\u73b0\u4e00\u4e2aurl\u5730\u5740\u8df3\u8f6c\u51fd\u6570\uff0c\u4f60\u53ef\u4ee5\u6309\u7167\u5982\u4e0b\u6b65\u9aa4\u5b9e\u73b0\u4e00\u4e2a Module
-1. **\u81ea\u5b9a\u4e49module\u7684\u6b65\u9aa4**
-   1. \u81ea\u5b9a\u4e49\u7684module\u7c7b \u5fc5\u987b\u5b9e\u73b0 `WXModuleProtocol`
-   2. \u5fc5\u987b\u6dfb\u52a0\u5b8f`WX_EXPORT_METHOD`, \u5b83\u53ef\u4ee5\u88abweex\u8bc6\u522b\uff0c\u5b83\u7684\u53c2\u6570\u662f JavaScript\u8c03\u7528 module\u6307\u5b9a\u65b9\u6cd5\u7684\u53c2\u6570
-   3. \u6dfb\u52a0`@synthesized weexInstance`\uff0c\u6bcf\u4e2amoudle\u5bf9\u8c61\u88ab\u7ed1\u5b9a\u5230\u4e00\u4e2a\u6307\u5b9a\u7684\u5b9e\u4f8b\u4e0a
-   4. Module \u65b9\u6cd5\u4f1a\u5728UI\u7ebf\u7a0b\u4e2d\u88ab\u8c03\u7528\uff0c\u6240\u4ee5\u4e0d\u8981\u505a\u592a\u591a\u8017\u65f6\u7684\u4efb\u52a1\u5728\u8fd9\u91cc\uff0c\u5982\u679c\u8981\u5728\u5176\u4ed6\u7ebf\u7a0b\u6267\u884c\u6574\u4e2amodule \u65b9\u6cd5\uff0c\u9700\u8981\u5b9e\u73b0`WXModuleProtocol`\u4e2d`- (NSThread *)targetExecuteThread`\u7684\u65b9\u6cd5\uff0c\u8fd9\u6837\uff0c\u5206\u53d1\u5230\u8fd9\u4e2amodule\u7684\u4efb\u52a1\u4f1a\u5728\u6307\u5b9a\u7684\u7ebf\u7a0b\u4e2d\u8fd0\u884c
-   5. Weex \u7684\u53c2\u6570\u53ef\u4ee5\u662f String \u6216\u8005Map
-   6. Module \u652f\u6301\u8fd4\u56de\u503c\u7ed9 JavaScript\u4e2d\u7684\u56de\u8c03\uff0c\u56de\u8c03\u7684\u7c7b\u578b\u662f`WXModuleCallback`,\u56de\u8c03\u7684\u53c2\u6570\u53ef\u4ee5\u662fString\u6216\u8005Map
-      
-      ```object-c
-      @implementation WXEventModule
-      @synthesize weexInstance;
-         WX_EXPORT_METHOD(@selector(openURL:callback))
-      - (void)openURL:(NSString *)url callback:(WXModuleCallback)callback
-      {
-          NSString *newURL = url;
-          if ([url hasPrefix:@"//"]) {
-              newURL = [NSString stringWithFormat:@"http:%@", url];
-          } else if (![url hasPrefix:@"http"]) {
-             newURL = [NSURL URLWithString:url relativeToURL:weexInstance.scriptURL].absoluteString;
-          }
-      
-          UIViewController *controller = [[WXDemoViewController alloc] init];
-          ((WXDemoViewController *)controller).url = [NSURL URLWithString:newURL];
-      
-          [[weexInstance.viewController navigationController] pushViewController:controller animated:YES];
-          callback(@{@"result":@"success"});
-      }
-      
-      @end
-      ```
-2. **Register the module**
-   \u901a\u8fc7\u8c03\u7528 WXSDKEngine \u4e2d\u7684 `registerModule:withClass`\u65b9\u6cd5\u6765\u6ce8\u518c\u81ea\u5df1\u7684module
-   
-   ```object-c
-   WXSDKEngine.h
-   /**
-   *  @abstract Registers a module for a given name
-   *  @param name The module name to register
-   *  @param clazz  The module class to register
-   **/
-   + (void)registerModule:(NSString *)name withClass:(Class)clazz;
-   [WXSDKEngine registerModule:@"event" withClass:[WXEventModule class]];
-   ```
-3. **\u4f7f\u7528\u81ea\u5df1\u7684module**
-    \u8fd9\u91cc\u7684  require \u91cc\u9762\u7684event \u5c31\u662f\u5728 \u4e0a\u4e00\u6b65\u8c03\u7528`registerModule:` \u6ce8\u518cmodule \u65f6\u5019\u7684name
-   
-   ```javascript
-    var eventModule = weex.requireModule('event'); 
-    eventModule.openURL('url',function(ret) {   
-        nativeLog(ret);
-    });
-   ```
-   
-   Weex SDK\u6ca1\u6709 \u56fe\u7247\u4e0b\u8f7d\uff0cnavigation \u64cd\u4f5c\u7684\u80fd\u529b\uff0c\u8bf7\u5927\u5bb6\u81ea\u5df1\u5b9e\u73b0\u8fd9\u4e9b protocol
-
-4. **WXImgLoaderProtocol**  
-
-   weexSDK \u6ca1\u6709\u56fe\u7247\u4e0b\u8f7d\u7684\u80fd\u529b\uff0c\u9700\u8981\u5b9e\u73b0 WXImgLoaderProtocol,\u53c2\u8003\u4e0b\u9762\u7684\u4f8b\u5b50
-   
-   ```object-c
-   WXImageLoaderProtocol.h
-   @protocol WXImgLoaderProtocol <WXModuleProtocol>
-   /**
-    * @abstract Creates a image download handler with a given URL
-    * @param imageUrl The URL of the image to download
-    * @param imageFrame  The frame of the image you want to set
-    * @param options : The options to be used for this download
-    * @param completedBlock : A block called once the download is completed.
-      image : the image which has been download to local.
-      error : the error which has happened in download.
-      finished : a Boolean value indicating whether download action has finished.
-   */
-   -(id<WXImageOperationProtocol>)downloadImageWithURL:(NSString *)url imageFrame:(CGRect)imageFrame userInfo:(NSDictionary *)options completed:(void(^)(UIImage *image,  NSError *error, BOOL finished))completedBlock;
-   @end
-   ```
-   
-   \u5b9e\u73b0\u4e0a\u8ff0\u534f\u8bae  
-   
-   ```object-c
-   @implementation WXImgLoaderDefaultImpl
-   #pragma mark -
-   #pragma mark WXImgLoaderProtocol
-   
-   - (id<WXImageOperationProtocol>)downloadImageWithURL:(NSString *)url imageFrame:(CGRect)imageFrame userInfo:(NSDictionary *)userInfo completed:(void(^)(UIImage *image,  NSError *error, BOOL finished))completedBlock
-   {
-       if ([url hasPrefix:@"//"]) {
-           url = [@"http:" stringByAppendingString:url];
-       }
-       return (id<WXImageOperationProtocol>)[[SDWebImageManager sharedManager] downloadImageWithURL:[NSURL URLWithString:url] options:0 progress:^(NSInteger receivedSize, NSInteger expectedSize) {     
-       } completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished, NSURL *imageURL) {
-       if (completedBlock) {
-           completedBlock(image, error, finished);
-       }
-       }];
-   }
-   @end
-   ```
-
-5. **handler\u6ce8\u518c** 
+
+### **\u81ea\u5b9a\u4e49module\u7684\u6b65\u9aa4**
+1. \u81ea\u5b9a\u4e49\u7684module\u7c7b \u5fc5\u987b\u5b9e\u73b0 `WXModuleProtocol`
+2. \u5fc5\u987b\u6dfb\u52a0\u5b8f`WX_EXPORT_METHOD`, \u5b83\u53ef\u4ee5\u88abweex\u8bc6\u522b\uff0c\u5b83\u7684\u53c2\u6570\u662f JavaScript\u8c03\u7528 module\u6307\u5b9a\u65b9\u6cd5\u7684\u53c2\u6570
+3. \u6dfb\u52a0`@synthesized weexInstance`\uff0c\u6bcf\u4e2amoudle\u5bf9\u8c61\u88ab\u7ed1\u5b9a\u5230\u4e00\u4e2a\u6307\u5b9a\u7684\u5b9e\u4f8b\u4e0a
+4. Module \u65b9\u6cd5\u4f1a\u5728UI\u7ebf\u7a0b\u4e2d\u88ab\u8c03\u7528\uff0c\u6240\u4ee5\u4e0d\u8981\u505a\u592a\u591a\u8017\u65f6\u7684\u4efb\u52a1\u5728\u8fd9\u91cc\uff0c\u5982\u679c\u8981\u5728\u5176\u4ed6\u7ebf\u7a0b\u6267\u884c\u6574\u4e2amodule \u65b9\u6cd5\uff0c\u9700\u8981\u5b9e\u73b0`WXModuleProtocol`\u4e2d`- (NSThread *)targetExecuteThread`\u7684\u65b9\u6cd5\uff0c\u8fd9\u6837\uff0c\u5206\u53d1\u5230\u8fd9\u4e2amodule\u7684\u4efb\u52a1\u4f1a\u5728\u6307\u5b9a\u7684\u7ebf\u7a0b\u4e2d\u8fd0\u884c
+5. Weex \u7684\u53c2\u6570\u53ef\u4ee5\u662f String \u6216\u8005Map
+6. Module \u652f\u6301\u8fd4\u56de\u503c\u7ed9 JavaScript\u4e2d\u7684\u56de\u8c03\uff0c\u56de\u8c03\u7684\u7c7b\u578b\u662f`WXModuleCallback`,\u56de\u8c03\u7684\u53c2\u6570\u53ef\u4ee5\u662fString\u6216\u8005Map
+    
+    ```object-c
+    @implementation WXEventModule
+    @synthesize weexInstance;
+        WX_EXPORT_METHOD(@selector(openURL:callback))
+    - (void)openURL:(NSString *)url callback:(WXModuleCallback)callback
+    {
+        NSString *newURL = url;
+        if ([url hasPrefix:@"//"]) {
+            newURL = [NSString stringWithFormat:@"http:%@", url];
+        } else if (![url hasPrefix:@"http"]) {
+            newURL = [NSURL URLWithString:url relativeToURL:weexInstance.scriptURL].absoluteString;
+        }
+    
+        UIViewController *controller = [[WXDemoViewController alloc] init];
+        ((WXDemoViewController *)controller).url = [NSURL URLWithString:newURL];
+    
+        [[weexInstance.viewController navigationController] pushViewController:controller animated:YES];
+        callback(@{@"result":@"success"});
+    }
+    
+    @end
+    ```
+
+\u53e6\u5916\uff0c`0.10.0` \u5f00\u59cb\u652f\u6301\u540c\u6b65\u6a21\u5757 API \u8c03\u7528\uff0c\u60a8\u53ef\u4ee5\u4f7f\u7528\u5b8f `WX_EXPORT_METHOD_SYNC` \u5bfc\u51fa\u6a21\u5757\u65b9\u6cd5\uff0c\u8fd9\u4e9b\u65b9\u6cd5\u53ef\u4ee5\u4f7f JavaScript \u63a5\u53d7\u4ece native \u8fd4\u56de\u7684\u503c\uff0c\u5b83\u53ea\u80fd\u5728 JS \u7ebf\u7a0b\u88ab\u8c03\u7528\u3002
+
+### \u6ce8\u518c module
+
+\u901a\u8fc7\u8c03\u7528 WXSDKEngine \u4e2d\u7684 `registerModule:withClass`\u65b9\u6cd5\u6765\u6ce8\u518c\u81ea\u5df1\u7684module
+
+```object-c
+WXSDKEngine.h
+/**
+*  @abstract Registers a module for a given name
+*  @param name The module name to register
+*  @param clazz  The module class to register
+**/
++ (void)registerModule:(NSString *)name withClass:(Class)clazz;
+[WXSDKEngine registerModule:@"event" withClass:[WXEventModule class]];
+```
+
+### \u4f7f\u7528\u81ea\u5df1\u7684 module
+
+\u8fd9\u91cc\u7684 require \u91cc\u9762\u7684 event \u5c31\u662f\u5728 \u4e0a\u4e00\u6b65\u8c03\u7528 `registerModule:` \u6ce8\u518c module \u65f6\u5019\u7684 name
+
+```javascript
+var eventModule = weex.requireModule('event'); 
+eventModule.openURL('url',function(ret) {   
+    nativeLog(ret);
+});
+```
+
+Weex SDK \u6ca1\u6709 \u56fe\u7247\u4e0b\u8f7d\uff0cnavigation \u64cd\u4f5c\u7684\u80fd\u529b\uff0c\u8bf7\u5927\u5bb6\u81ea\u5df1\u5b9e\u73b0\u8fd9\u4e9b protocol
+
+## WXImgLoaderProtocol
+
+weexSDK \u6ca1\u6709\u56fe\u7247\u4e0b\u8f7d\u7684\u80fd\u529b\uff0c\u9700\u8981\u5b9e\u73b0 WXImgLoaderProtocol, \u53c2\u8003\u4e0b\u9762\u7684\u4f8b\u5b50
+
+```object-c
+WXImageLoaderProtocol.h
+@protocol WXImgLoaderProtocol <WXModuleProtocol>
+/**
+* @abstract Creates a image download handler with a given URL
+* @param imageUrl The URL of the image to download
+* @param imageFrame  The frame of the image you want to set
+* @param options : The options to be used for this download
+* @param completedBlock : A block called once the download is completed.
+    image : the image which has been download to local.
+    error : the error which has happened in download.
+    finished : a Boolean value indicating whether download action has finished.
+*/
+-(id<WXImageOperationProtocol>)downloadImageWithURL:(NSString *)url imageFrame:(CGRect)imageFrame userInfo:(NSDictionary *)options completed:(void(^)(UIImage *image,  NSError *error, BOOL finished))completedBlock;
+@end
+```
+
+\u5b9e\u73b0\u4e0a\u8ff0\u534f\u8bae  
+
+```object-c
+@implementation WXImgLoaderDefaultImpl
+#pragma mark -
+#pragma mark WXImgLoaderProtocol
+
+- (id<WXImageOperationProtocol>)downloadImageWithURL:(NSString *)url imageFrame:(CGRect)imageFrame userInfo:(NSDictionary *)userInfo completed:(void(^)(UIImage *image,  NSError *error, BOOL finished))completedBlock
+{
+    if ([url hasPrefix:@"//"]) {
+        url = [@"http:" stringByAppendingString:url];
+    }
+    return (id<WXImageOperationProtocol>)[[SDWebImageManager sharedManager] downloadImageWithURL:[NSURL URLWithString:url] options:0 progress:^(NSInteger receivedSize, NSInteger expectedSize) {     
+    } completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished, NSURL *imageURL) {
+    if (completedBlock) {
+        completedBlock(image, error, finished);
+    }
+    }];
+}
+@end
+```
+
+### handler\u6ce8\u518c
  
-   \u4f60\u53ef\u4ee5\u901a\u8fc7WXSDKEngine \u4e2d\u7684 `registerHandler:withProtocol`\u6ce8\u518chandler
-   
-   ```object-c
-   WXSDKEngine.h
-   /**
-   * @abstract Registers a handler for a given handler instance and specific protocol
-   * @param handler The handler instance to register
-   * @param protocol The protocol to confirm
-   */
-   + (void)registerHandler:(id)handler withProtocol:(Protocol *)protocol;
-   
-   [WXSDKEngine registerHandler:[WXImgLoaderDefaultImpl new] withProtocol:@protocol(WXImgLoaderProtocol)]
-   ```
+\u4f60\u53ef\u4ee5\u901a\u8fc7WXSDKEngine \u4e2d\u7684 `registerHandler:withProtocol`\u6ce8\u518chandler
+
+```object-c
+WXSDKEngine.h
+/**
+* @abstract Registers a handler for a given handler instance and specific protocol
+* @param handler The handler instance to register
+* @param protocol The protocol to confirm
+*/
++ (void)registerHandler:(id)handler withProtocol:(Protocol *)protocol;
+
+[WXSDKEngine registerHandler:[WXImgLoaderDefaultImpl new] withProtocol:@protocol(WXImgLoaderProtocol)]
+```
 
 ## Components \u6269\u5c55
 

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f6838783/doc/source/cn/references/components/cell.md
----------------------------------------------------------------------
diff --git a/doc/source/cn/references/components/cell.md b/doc/source/cn/references/components/cell.md
index 8f90d9c..f4baaae 100644
--- a/doc/source/cn/references/components/cell.md
+++ b/doc/source/cn/references/components/cell.md
@@ -17,7 +17,7 @@ version: 2.1
 
 **\u6ce8\u610f\uff1a**
 
-\u4f60\u4e0d\u80fd\u7ed9 `<cell>` \u8bbe\u5b9a`flex`\u503c\u3002 `<cell>`\u7684\u5bbd\u5ea6\u7b49\u4e8e\u7236\u7ec4\u4ef6 `<list>` \u7684\u5bbd\u5ea6\uff0c\u5e76\u4e14 `<cell>` \u9ad8\u5ea6\u81ea\u9002\u5e94\u3002
+\u7531\u4e8e `<cell>` \u672c\u8eab\u662f\u4e00\u4e2a\u5bb9\u5668\uff0c\u5176\u5e03\u5c40\u7531 `<list>` \u8fdb\u884c\u7ba1\u7406\uff0c\u4f60\u4e0d\u80fd\u7ed9 `<cell>` \u8bbe\u5b9a`flex`\u503c\u3002 `<cell>`\u7684\u5bbd\u5ea6\u7b49\u4e8e\u7236\u7ec4\u4ef6 `<list>` \u7684\u5bbd\u5ea6\uff0c\u5e76\u4e14 `<cell>` \u9ad8\u5ea6\u81ea\u9002\u5e94\uff0c\u6307\u5b9a `margin` \u6837\u5f0f\u4e5f\u4e0d\u8d77\u4f5c\u7528\u3002
 
 - \u901a\u7528\u6837\u5f0f\uff1a\u652f\u6301\u6240\u6709\u901a\u7528\u6837\u5f0f
 

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f6838783/doc/source/cn/references/gesture.md
----------------------------------------------------------------------
diff --git a/doc/source/cn/references/gesture.md b/doc/source/cn/references/gesture.md
index f4d566d..be81e45 100644
--- a/doc/source/cn/references/gesture.md
+++ b/doc/source/cn/references/gesture.md
@@ -26,7 +26,8 @@ Weex \u5c01\u88c5\u4e86\u539f\u751f\u7684\u89e6\u6478\u4e8b\u4ef6\u4ee5\u63d0\u4f9b\u624b\u52bf\u7cfb\u7edf\u3002\u4f7f\u7528\u624b\u52bf\u7c7b\u4f3c\u4e8e
 	- `panstart`
 	- `panmove`
 	- `panend`
-
+	- `horizontalpan` <span class="api-version">v0.10+</span>\uff1a\u624b\u52bf\u7684 `start/move/end` \u72b6\u6001\u4fdd\u5b58\u5728 `state` \u7279\u6027\u4e2d\u3002\u76ee\u524d\u8be5\u624b\u52bf\u5728 Android \u4e0b\u4f1a\u4e0e click \u4e8b\u4ef6\u51b2\u7a81\u3002
+	- `verticalpan` <span class="api-version">v0.10+</span>\uff1a\u52bf\u7684 `start/move/end` \u72b6\u6001\u4fdd\u5b58\u5728 `state` \u7279\u6027\u4e2d\u3002\u76ee\u524d\u8be5\u624b\u52bf\u5728 Android \u4e0b\u4f1a\u4e0e click \u4e8b\u4ef6\u51b2\u7a81\u3002
 - **Swipe**\uff1a`swipe` \u5c06\u4f1a\u5728\u7528\u6237\u5728\u5c4f\u5e55\u4e0a\u6ed1\u52a8\u65f6\u89e6\u53d1\uff0c\u4e00\u6b21\u8fde\u7eed\u7684\u6ed1\u52a8\u53ea\u4f1a\u89e6\u53d1\u4e00\u6b21 `swiper` \u624b\u52bf\u3002
 - **LongPress**\uff1a`LongPress` \u5c06\u4f1a\u5728\u89e6\u6478\u70b9\u8fde\u7eed\u4fdd\u6301 500 ms\u4ee5\u4e0a\u65f6\u89e6\u53d1\u3002
 

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f6838783/doc/source/guide/intro/devtools.md
----------------------------------------------------------------------
diff --git a/doc/source/guide/intro/devtools.md b/doc/source/guide/intro/devtools.md
deleted file mode 100644
index f9b32b4..0000000
--- a/doc/source/guide/intro/devtools.md
+++ /dev/null
@@ -1,100 +0,0 @@
----
-title: Using Devtools  
-type: guide
-order: 5.7
-version: 2.1
----
-
-# Devtools
-
-Weex devtools is a custom devtools for weex that implements [Chrome Debugging Protocol](https://developer.chrome.com/devtools/docs/debugger-protocol), it is designed to help you quickly inspect your app and debug your JS bundle source in a chrome web page, both Android and IOS platform are supported.
-
-## Install
-
-```
-   $ npm install  -g  weex-toolkit
-```
-#### usage
-```
-weex debug [options] [we_file|bundles_dir]
-
-  Options:
-
-    -h, --help           output usage information
-    -V, --verbose        display logs of debugger server
-    -v, --version        display version
-    -p, --port [port]    set debugger server port
-    -e, --entry [entry]  set the entry bundlejs path when you specific the bundle server root path
-    -m, --mode [mode]    set build mode [transformer|loader]
-    -w, --watch          watch we file changes auto build them and refresh debugger page![default enabled]
-```
-
-#### start debugger
-```
-$weex debug
-```
-this command will start debug server and launch a chrome opening `DeviceList` page.
-this page will display a qrcode ,you can use `Playground App` scan it for starting debug.
-
-#### start debugger with a we file
-```
-$weex debug your_weex.we
-```
-this command will compile `your_weex.we` to `your_weex.js`  and start the debug server as upon command.
-`your_weex.js` will deploy on the server and displayed in `DeviceList` page as  another qrcode contain the url of your_weex.js
-
-
-#### start debugger with a directory of we files
-```
-$weex debug your/we/path  -e index.we
-```
-this command will build every file in your/we/path and deploy them on the bundle server. your directory will mapping to  http://localhost:port/weex/ 
-use -e to set the entry of these bundles. and the url of "index.we" will display on device list page as another qrcode.
-
-## Features
-
-### Connect devices
-![devtools-main](https://img.alicdn.com/tps/TB13fwSKFXXXXXDaXXXXXXXXXXX-887-828.png "connecting (multiple) devices")
-
-### Inspector
- Inspector can be used to show your `Element` \ `Network` \ `Console log` \ `ScreenCast` \ `BoxModel` \ `Native View` and so on.
-
-![devtools-inspector](https://img.alicdn.com/tps/TB1O.nwKFXXXXX8XpXXXXXXXXXX-1436-811.png "devtools-inspector")
-
-#### Element
-##### native view element
-![native-element](https://img.alicdn.com/tps/TB16L3ENXXXXXcsXVXXXXXXXXXX-2878-1798.png "native-element")
-
-##### weex dom element
-![dom-element](https://img.alicdn.com/tps/TB1TsMuNXXXXXcsaXXXXXXXXXXX-2450-1460.png "dom-element")
-
-#### Network
-
-##### show the total time and latency
-![inspector-network](https://img.alicdn.com/tps/TB1NjO_KFXXXXcaaXXXXXXXXXXX-2880-1800.png "inspector-network")
-
-##### show the header and response
-![inspector-network](https://img.alicdn.com/tps/TB1ck6lKFXXXXbZXFXXXXXXXXXX-2880-1800.png "inspector-network")
-
-#### Console
-![inspector-console](https://img.alicdn.com/tps/TB1a7HqKFXXXXXMXFXXXXXXXXXX-2880-1800.png "inspector-console")
-
-#### Resource
-![inspector-resource](https://img.alicdn.com/tps/TB1oY6cKFXXXXXQaXXXXXXXXXXX-2880-1800.png "inspector-resource")
-
-### Debugger
-
- Debugger can be used to debug your bundle js source, you can set `Breakpoint` \ watch `CallStack`.
- 
-![devtools-debugger](https://img.alicdn.com/tps/TB1aPTEKFXXXXXaXXXXXXXXXXXX-1436-813.png "devtools-debugger")
-
-#### Breakpoint and CallStack
-![debugger-breakpoint](https://img.alicdn.com/tps/TB1_trbKFXXXXc0XVXXXXXXXXXX-2880-1800.png "debugger-breakpoint")
-
-
-## Integrate devtools
-
-* Android
-    * See the doc [Weex devtools (Android)](../../references/advanced/integrate-devtool-to-android.html), it will lead you to config and use it step by step.
-* IOS
-    * See the doc [Weex devtools (iOS)](../../references/advanced/integrate-devtool-to-ios.html), it will lead you to config and use it step by step.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f6838783/doc/source/guide/set-up-env.md
----------------------------------------------------------------------
diff --git a/doc/source/guide/set-up-env.md b/doc/source/guide/set-up-env.md
index 338502b..71ad2fd 100644
--- a/doc/source/guide/set-up-env.md
+++ b/doc/source/guide/set-up-env.md
@@ -10,7 +10,7 @@ has_chapter_content: true
 
 Use dotWe is a good choice, But if you want to develop locally on your own machine, you will set up your development environment.
 
-You will need Node.js and the Weex CLi.
+You will need Node.js and the [Weex CLi](https://github.com/weexteam/weex-toolkit).
 
 You can installing Node using [nvm](https://github.com/creationix/nvm) (Simple bash script to manage multiple active node.js versions). Run the following commands in a Terminal after installing nvm:
 

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f6838783/doc/source/guide/tools/weexpack.md
----------------------------------------------------------------------
diff --git a/doc/source/guide/tools/weexpack.md b/doc/source/guide/tools/weexpack.md
index 699431f..dd0ee36 100644
--- a/doc/source/guide/tools/weexpack.md
+++ b/doc/source/guide/tools/weexpack.md
@@ -283,6 +283,8 @@ After all above steps, you could modify your application we/vue files under src
 
 ![weexpack2](https://img.alicdn.com/tps/TB18hxjPXXXXXXgapXXXXXXXXXX-248-258.png)
 
+[Plugin development guide](https://github.com/weexteam/weex-pack/blob/master/doc/plugin-devloping-web.md)
+
 ## Examples
 
  [Create Weex One App with Weexpack](https://github.com/weexteam/weex-pack/wiki/Create-Weex-One-App-with-Weexpack)