Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DiDi
Chameleon
提交
e2cce820
C
Chameleon
项目概览
DiDi
/
Chameleon
通知
13
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
Chameleon
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
e2cce820
编写于
4月 20, 2019
作者:
Y
yylgit
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
cmlparse
上级
e76a3c13
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
38 addition
and
10 deletion
+38
-10
packages/mvvm-pack/compiler.js
packages/mvvm-pack/compiler.js
+3
-1
packages/mvvm-pack/lib/amd.js
packages/mvvm-pack/lib/amd.js
+19
-0
packages/mvvm-pack/lib/amdwrapper.js
packages/mvvm-pack/lib/amdwrapper.js
+2
-1
packages/mvvm-template-parser/index.js
packages/mvvm-template-parser/index.js
+8
-4
packages/mvvm-template-parser/lib/process-template.js
packages/mvvm-template-parser/lib/process-template.js
+0
-0
packages/mvvm-template-parser/test/index.js
packages/mvvm-template-parser/test/index.js
+0
-1
packages/mvvm-template-parser/test/vueToCml.js
packages/mvvm-template-parser/test/vueToCml.js
+6
-3
未找到文件。
packages/mvvm-pack/compiler.js
浏览文件 @
e2cce820
...
...
@@ -4,7 +4,7 @@ const Log = require('./log.js');
const
EventEmitter
=
require
(
'
events
'
);
const
cmlUtils
=
require
(
'
chameleon-tool-utils
'
);
const
parser
=
require
(
'
../mvvm-babel-parser/lib
'
);
const
merge
=
require
(
'
webpack-merge
'
);
const
amd
=
require
(
'
./lib/amd.js
'
);
class
Compiler
{
constructor
(
webpackCompiler
,
plugin
)
{
...
...
@@ -37,6 +37,8 @@ class Compiler {
this
.
moduleRule
=
this
.
moduleRule
.
concat
(
plugin
.
moduleRule
);
}
this
.
amd
=
amd
;
// amd的工具方法
}
...
...
packages/mvvm-pack/lib/amd.js
0 → 100644
浏览文件 @
e2cce820
const
amdWrapModule
=
require
(
'
./amdwrapper.js
'
);
const
path
=
require
(
'
path
'
);
const
fs
=
require
(
'
fs
'
);
const
globalBootstrap
=
fs
.
readFileSync
(
path
.
join
(
__dirname
,
'
amdbootstrap.global.js
'
),
{
encoding
:
'
utf8
'
})
const
moduleBootstrap
=
fs
.
readFileSync
(
path
.
join
(
__dirname
,
'
amdbootstrap.module.js
'
),
{
encoding
:
'
utf8
'
})
function
getGlobalBootstrap
(
globalName
)
{
return
globalBootstrap
.
replace
(
'
$GLOBAL
'
,
globalName
);
}
function
getModuleBootstrap
()
{
return
moduleBootstrap
;
}
module
.
exports
=
{
amdWrapModule
,
getGlobalBootstrap
,
getModuleBootstrap
}
packages/mvvm-pack/lib/amdwrapper.js
浏览文件 @
e2cce820
module
.
exports
=
function
(
content
,
modId
)
{
module
.
exports
=
function
(
{
content
,
modId
}
)
{
if
(
!
/^
\s
*cmldefine
\s
*
\(
/
.
test
(
content
))
{
content
=
'
cmldefine(
\'
'
+
modId
+
'
\'
, function(require, exports, module){
'
+
content
+
'
\r\n
});
'
;
}
return
content
;
}
\ No newline at end of file
packages/mvvm-template-parser/index.js
浏览文件 @
e2cce820
const
{
vueToCml
}
=
require
(
'
./
common
/process-template.js
'
);
const
{
vueToCml
}
=
require
(
'
./
lib
/process-template.js
'
);
const
parser
=
require
(
'
mvvm-babel-parser
'
);
const
generator
=
require
(
'
mvvm-babel-generator/lib
'
)
const
types
=
require
(
'
@babel/types
'
);
const
traverse
=
require
(
'
@babel/traverse
'
);
exports
.
vueToCml
=
vueToCml
;
exports
.
parser
=
parser
;
exports
.
generator
=
generator
[
"
default
"
];
exports
.
types
=
types
;
exports
.
traverse
=
traverse
[
"
default
"
];
exports
.
vueToCml
=
vueToCml
;
exports
.
cmlparse
=
function
(
content
)
{
return
parser
.
parse
(
content
,
{
plugins
:
[
'
jsx
'
]
})
}
packages/mvvm-template-parser/
common
/process-template.js
→
packages/mvvm-template-parser/
lib
/process-template.js
浏览文件 @
e2cce820
文件已移动
packages/mvvm-template-parser/test/
standardparser
.js
→
packages/mvvm-template-parser/test/
index
.js
浏览文件 @
e2cce820
...
...
@@ -10,7 +10,6 @@ const {ast} = standardParser({
source
:
template
,
lang
:
'
cml
'
})
debugger
traverse
(
ast
,
{
enter
:
(
path
)
=>
{
let
node
=
path
.
node
;
...
...
packages/mvvm-template-parser/
common/index
.js
→
packages/mvvm-template-parser/
test/vueToCml
.js
浏览文件 @
e2cce820
const
processTemplate
=
require
(
'
./process-template
.js
'
);
const
{
vueToCml
,
cmlparse
}
=
require
(
'
../index
.js
'
);
let
source
=
`<template>
<view>
<!-- 事件 -->
...
...
@@ -41,5 +41,8 @@ let options = {lang: 'cml',
}]
};
// let source = `<view style="{{item.id}}">{{item.id}}{{item[11]}}</view>`
let
result
=
processTemplate
.
vueToCml
(
source
,
options
);
console
.
log
(
'
sss
'
,
result
)
let
result
=
vueToCml
(
source
,
options
);
let
ast
=
cmlparse
(
result
.
source
);
debugger
console
.
log
(
ast
)
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录