patrick-steele-idem / morphdom

Fast and lightweight DOM diffing/patching (no virtual DOM needed)
MIT License
3.22k stars 131 forks source link

examples don't work in macOS Chrome or Safari #218

Open yatesco opened 3 years ago

yatesco commented 3 years ago

I followed the instructions but visiting either of the links either shows a blank page with a server stack trace:

Caused by: Error: Failed to walk dependency [require: ./content-before.marko]. Dependency chain: [package: path="/Users/coliny/Dev/morphdom/examples/simple/browser.json"] → [require: ./client.js] → [require: ./content-before.marko]. Cause: Error: An error occurred while trying to compile template at path "/Users/coliny/Dev/morphdom/examples/simple/content-before.marko". Error(s) in template:
1) [examples/simple/content-before.marko:2:4] "-" not allowed as first character of attribute name

    at module.exports (/Users/coliny/Dev/morphdom/node_modules/lasso/node_modules/raptor-util/createError.js:7:50)
    at walkDependency (/Users/coliny/Dev/morphdom/node_modules/lasso/src/dependency-walker.js:123:23)
    at async walkDependencies (/Users/coliny/Dev/morphdom/node_modules/lasso/src/dependency-walker.js:38:13)
    at async walkManifest (/Users/coliny/Dev/morphdom/node_modules/lasso/src/dependency-walker.js:60:9)
    at async walkDependency (/Users/coliny/Dev/morphdom/node_modules/lasso/src/dependency-walker.js:115:17)
    at async walkDependencies (/Users/coliny/Dev/morphdom/node_modules/lasso/src/dependency-walker.js:38:13)
    at async walkManifest (/Users/coliny/Dev/morphdom/node_modules/lasso/src/dependency-walker.js:60:9)
    at async walkDependency (/Users/coliny/Dev/morphdom/node_modules/lasso/src/dependency-walker.js:115:17)
    at async walkDependencies (/Users/coliny/Dev/morphdom/node_modules/lasso/src/dependency-walker.js:38:13)
    at async walkManifest (/Users/coliny/Dev/morphdom/node_modules/lasso/src/dependency-walker.js:60:9)
Caused by: Error: An error occurred while trying to compile template at path "/Users/coliny/Dev/morphdom/examples/simple/content-before.marko". Error(s) in template:
1) [examples/simple/content-before.marko:2:4] "-" not allowed as first character of attribute name

    at handleErrors (/Users/coliny/Dev/morphdom/node_modules/marko/src/compiler/Compiler.js:94:21)
    at Compiler.compile (/Users/coliny/Dev/morphdom/node_modules/marko/src/compiler/Compiler.js:177:9)
    at _compile (/Users/coliny/Dev/morphdom/node_modules/marko/src/compiler/index.js:94:33)
    at compileFile (/Users/coliny/Dev/morphdom/node_modules/marko/src/compiler/index.js:149:16)
    at Object.compileFileForBrowser (/Users/coliny/Dev/morphdom/node_modules/marko/src/compiler/index.js:163:12)
    at /Users/coliny/Dev/morphdom/node_modules/lasso-marko/lasso-marko-plugin.js:34:34
    at new Promise (<anonymous>)
    at compile (/Users/coliny/Dev/morphdom/node_modules/lasso-marko/lasso-marko-plugin.js:32:16)
    at Object.<anonymous> (/Users/coliny/Dev/morphdom/node_modules/lasso-marko/lasso-marko-plugin.js:50:20)
    at Object.<anonymous> (/Users/coliny/Dev/morphdom/node_modules/callbackify/index.js:10:10)
Creation stack trace: Error
    at AsyncStream.beginAsync (/Users/coliny/Dev/morphdom/node_modules/marko/src/runtime/html/AsyncStream.js:192:56)
    at render (/Users/coliny/Dev/morphdom/node_modules/@lasso/marko-taglib/taglib/slot-tag.js:128:24)
    at render (/Users/coliny/Dev/morphdom/node_modules/@lasso/marko-taglib/taglib/body-tag.js:16:3)
    at wrappedRenderer (/Users/coliny/Dev/morphdom/node_modules/marko/src/runtime/helpers.js:273:13)
    at render (/Users/coliny/Dev/morphdom/examples/simple/template.marko.js:41:3)
    at renderer (/Users/coliny/Dev/morphdom/node_modules/marko/src/components/renderer.js:217:9)
    at safeRender (/Users/coliny/Dev/morphdom/node_modules/marko/src/runtime/renderable.js:6:9)
    at Template.render (/Users/coliny/Dev/morphdom/node_modules/marko/src/runtime/renderable.js:136:20)
    at ServerResponse.response.marko (/Users/coliny/Dev/morphdom/node_modules/marko/src/express.js:58:29)
    at controller (/Users/coliny/Dev/morphdom/examples/server.js:42:21)
    at AsyncStream.error (/Users/coliny/Dev/morphdom/node_modules/marko/src/runtime/html/AsyncStream.js:441:13)
    at /Users/coliny/Dev/morphdom/node_modules/@lasso/marko-taglib/taglib/slot-tag.js:139:20
    at processTicksAndRejections (node:internal/process/task_queues:78:11)

or it works and shows:

image

with the following server message:

WARNING!!
Non standard template literals have been deprecated, please use javascript template literals instead. See: https://github.com/marko-js/marko/wiki/Deprecation:-non-standard-template-literal
  at examples/lifecycle-events/todos.marko