Comments (5)
we have added this as part of svelte recipes svelte-society/recipes-mvp#11
from template.
so i see how u guys apply it with the rollup plugin, but i think for new syntax you need to use preprocessors. example:
<script>
class Cow {
// stage 3 class properties syntax
static sound = "moo";
}
</script>
<main>
<h1>Cow says {Cow.sound}!</h1>
</main>
now we need to transpile what's in the script, otherwise acorn throws a fit:
[!] (plugin svelte) ParseError: Unexpected token
src/App.svelte
3: class Cow {
4: static sound = "moo";
^
5: }
6: </script>
ParseError: Unexpected token
at error (/Users/swyx/Desktop/Work/testbed/trybabelrecipe/svelte-app/node_modules/svelte/src/compiler/utils/error.ts:25:16)
at Parser$1.error (/Users/swyx/Desktop/Work/testbed/trybabelrecipe/svelte-app/node_modules/svelte/src/compiler/parse/index.ts:96:3)
at Parser$1.acorn_error (/Users/swyx/Desktop/Work/testbed/trybabelrecipe/svelte-app/node_modules/svelte/src/compiler/parse/index.ts:89:8)
So the fix is somewhat different. Make sure @babel/core and the rest of your plugins/presets are installed, then:
// rollup.config.js
// ...
export default {
// ...
plugins: [
svelte({
// ...
preprocess: {
script: ({ content }) => {
return require("@babel/core").transform(content, {
plugins: ["@babel/plugin-proposal-class-properties"],
});
},
},
}),
// ...
note - i'm honestly not sure if this is slow or suboptimal, i literally just cooked up this example and it worked so 🤷
note - you can also use svelte-preprocess
from template.
Hello @bgreater ,
You can find a example here: https://github.com/jimutt/svelte-pick-a-place/blob/master/rollup.config.js
from template.
Another option would be to use Parceljs. It is almost a zero configuration bundler. Look at this article to explain the simple setup.
parcel really has become my bundler of choice.
from template.
@bgreater if it's useful - here's how I do it in Sapper https://github.com/antony/sapper-ie
from template.
Related Issues (20)
- No app body on MacOS HOT 2
- Upgrade packages HOT 1
- `npm run dev` updates terminal quickly and repeatively when nothing is going HOT 2
- tsconfig error when cloning HOT 2
- Error when building: Unrecognized option enableSourcemap HOT 1
- Importing a module throws "Uncaught ReferenceError: exports is not defined" in browser
- could not find commit hash for HEAD HOT 1
- Svelte dev on https doesn't detect changes HOT 3
- Typescript support broken with TS 4.5, can't find type declarations HOT 6
- Consider adding dotenv and @rollup/plugin-replace HOT 1
- IIFE vs ES output format
- Sharing the Vite template I made based on the RollUp template HOT 3
- Mac user issues: Unexpected token and site can't be reached
- I have to save everytime after making changes HOT 1
- Hot update doesnt work with sveltejs/template
- compilerOptions wont effect build/dont apply
- SyntaxError: Cannot use import statement outside a module HOT 11
- Deprecate RollUP template in favor of Vite's for Svelte
- 【Feature Request】public directory customization should be set in one place
- Package css into js HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from template.