Skip to content

Commit b62f2f4

Browse files
yyx990803aJean
authored andcommitted
fix(ssr): should not warn for custom directives that do not have ssr implementation
fix vuejs#9167
1 parent a4cb164 commit b62f2f4

File tree

2 files changed

+17
-18
lines changed

2 files changed

+17
-18
lines changed

src/server/render.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -326,7 +326,7 @@ function renderStartingTag (node: VNode, context) {
326326
for (let i = 0; i < dirs.length; i++) {
327327
const name = dirs[i].name
328328
if (name !== 'show') {
329-
const dirRenderer = resolveAsset(context, 'directives', name, true)
329+
const dirRenderer = resolveAsset(context, 'directives', name)
330330
if (dirRenderer) {
331331
// directives mutate the node's data
332332
// which then gets rendered by modules

test/ssr/ssr-string.spec.js

+16-17
Original file line numberDiff line numberDiff line change
@@ -794,23 +794,6 @@ describe('SSR: renderToString', () => {
794794
})
795795
})
796796

797-
it('should resolve custom directive', done => {
798-
renderToString(new Vue({
799-
directives: {
800-
test: {
801-
bind(node) {
802-
node.data.domProps = { textContent: 'test' }
803-
}
804-
}
805-
},
806-
template: '<div v-test></div>',
807-
}), (err, result) => {
808-
expect('Failed to resolve directive: test').not.toHaveBeenWarned()
809-
expect(result).toContain('<div data-server-rendered="true">test</div>')
810-
done()
811-
})
812-
})
813-
814797
it('custom directives', done => {
815798
const renderer = createRenderer({
816799
directives: {
@@ -843,6 +826,22 @@ describe('SSR: renderToString', () => {
843826
})
844827
})
845828

829+
it('should not warn for custom directives that do not have server-side implementation', done => {
830+
renderToString(new Vue({
831+
directives: {
832+
test: {
833+
bind() {
834+
// noop
835+
}
836+
}
837+
},
838+
template: '<div v-test></div>',
839+
}), () => {
840+
expect('Failed to resolve directive: test').not.toHaveBeenWarned()
841+
done()
842+
})
843+
})
844+
846845
it('_scopeId', done => {
847846
renderVmWithOptions({
848847
_scopeId: '_v-parent',

0 commit comments

Comments
 (0)