fix(compiler-core): assest id (#190)

* fix(compile-core): asset id

* test(compile-core): asset id
This commit is contained in:
月迷津渡 2019-10-11 01:55:26 +08:00 committed by Evan You
parent 4ca32c537d
commit f71d252ffe
3 changed files with 10 additions and 4 deletions

View File

@ -54,7 +54,8 @@ exports[`compiler: codegen assets 1`] = `
return function render() {
with (this) {
const _component_Foo = _resolveComponent(\\"Foo\\")
const _component_barbaz = _resolveComponent(\\"bar-baz\\")
const _component_bar_baz = _resolveComponent(\\"bar-baz\\")
const _component_barbaz = _resolveComponent(\\"barbaz\\")
const _directive_my_dir = _resolveDirective(\\"my_dir\\")
return null

View File

@ -89,7 +89,7 @@ describe('compiler: codegen', () => {
test('assets', () => {
const root = createRoot({
components: [`Foo`, `bar-baz`],
components: [`Foo`, `bar-baz`, `barbaz`],
directives: [`my_dir`]
})
const { code } = generate(root, { mode: 'function' })
@ -97,10 +97,15 @@ describe('compiler: codegen', () => {
`const _component_Foo = _${helperNameMap[RESOLVE_COMPONENT]}("Foo")\n`
)
expect(code).toMatch(
`const _component_barbaz = _${
`const _component_bar_baz = _${
helperNameMap[RESOLVE_COMPONENT]
}("bar-baz")\n`
)
expect(code).toMatch(
`const _component_barbaz = _${
helperNameMap[RESOLVE_COMPONENT]
}("barbaz")\n`
)
expect(code).toMatch(
`const _directive_my_dir = _${
helperNameMap[RESOLVE_DIRECTIVE]

View File

@ -241,7 +241,7 @@ export function toValidAssetId(
name: string,
type: 'component' | 'directive'
): string {
return `_${type}_${name.replace(/[^\w]/g, '')}`
return `_${type}_${name.replace(/[^\w]/g, '_')}`
}
export function isEmptyExpression(node: ExpressionNode) {