{"record":{"id":"f0a1a37b160f50e3","repo":"Meituan-Dianping/mpvue","slug":"class-staticclass-interpolation-inside-attri","errorCode":null,"errorMessage":"class=\"${staticClass}\": Interpolation inside attributes has been deprecated. Use v-bind or the colon shorthand instead.","messagePattern":"class=\"(.+?)\": Interpolation inside attributes has been deprecated\\. Use v-bind or the colon shorthand instead\\.","errorType":"console","errorClass":null,"httpStatus":null,"severity":"error","filePath":"packages/weex-template-compiler/build.js","lineNumber":3443,"sourceCode":"  optimize(ast, options);\n  var code = generate(ast, options);\n  return {\n    ast: ast,\n    render: code.render,\n    staticRenderFns: code.staticRenderFns\n  }\n});\n\n/*  */\n\nfunction transformNode (el, options) {\n  var warn = options.warn || baseWarn;\n  var staticClass = getAndRemoveAttr(el, 'class');\n  var ref = parseStaticClass(staticClass, options);\n  var dynamic = ref.dynamic;\n  var classResult = ref.classResult;\n  if (process.env.NODE_ENV !== 'production' && dynamic && staticClass) {\n    warn(\n      \"class=\\\"\" + staticClass + \"\\\": \" +\n      'Interpolation inside attributes has been deprecated. ' +\n      'Use v-bind or the colon shorthand instead.'\n    );\n  }\n  if (!dynamic && classResult) {\n    el.staticClass = classResult;\n  }\n  var classBinding = getBindingAttr(el, 'class', false /* getStatic */);\n  if (classBinding) {\n    el.classBinding = classBinding;\n  } else if (dynamic) {\n    el.classBinding = classResult;\n  }\n}\n\nfunction genData$1 (el) {\n  var data = '';","sourceCodeStart":3425,"sourceCodeEnd":3461,"githubUrl":"https://github.com/Meituan-Dianping/mpvue/blob/6c5d78ee04f58c6d782c456dfcf0fe63c0b7f89b/packages/weex-template-compiler/build.js#L3425-L3461","documentation":"Dev-only compiler warning from the class module's transformNode: a static class attribute contains mustache interpolation (class=\"foo {{ bar }}\"), which is deprecated in Vue 2. Mixed static+interpolated class cannot be handled by the static/dynamic split, so the author must switch to v-bind:class.","triggerScenarios":"Thrown at packages/weex-template-compiler/build.js:3443 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use v-bind:class (or :class) for the dynamic part, e.g. :class=\"bar\" alongside class=\"foo\"","Split static and dynamic classes: class=\"static-cls\" :class=\"{ dyn: cond }\""],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"6c5d78ee04f58c6d782c456dfcf0fe63c0b7f89b","analyzedAt":"2026-09-02T05:17:40.946Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-09T11:17:12.671Z"}